home *** CD-ROM | disk | FTP | other *** search
/ InfoMagic Internet Tools 1993 July / Internet Tools.iso / iso9660 / mail / vm / vm_533.tar < prev    next >
Tape Archive  |  1993-04-11  |  360.0 KB

open in: MacOS 8.1     |     Win98     |     DOS

browse contents    |     view JSON data     |     view as text


This file was processed as: Tape Archive (archive/tar).

ConfidenceProgramDetectionMatch TypeSupport
100% dexvert Tape Archive (archive/tar) magic Supported
100% file POSIX tar archive (GNU) default
99% file POSIX tar archive (GNU), file vm-delete.el, mode 644 , uid 12 , gid 24 , size 14544 , seconds 4777473302, user kyle, group staff default
98% file data default
62% TrID TAR - Tape ARchive (GNU) default
37% TrID TAR - Tape ARchive (file) default
100% siegfried x-fmt/265 Tape Archive Format default
100% lsar Tar default
100% gt2 TAR Archiv gefunden (Auflistung ist deaktiviert) default
100% disktype GNU tar archive default
100% detectItEasy Archive: tar default
100% binwalkID POSIX tar archive (GNU), owner user name: "e.el" default
100% xdgMime application/x-tar default



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 76 6d 2d 64 65 6c 65 74 | 65 2e 65 6c 00 00 00 00 |vm-delet|e.el....|
|00000010| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000020| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000030| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000040| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000050| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000060| 00 00 00 00 20 20 20 36 | 34 34 20 00 20 20 20 20 |.... 6|44 . |
|00000070| 31 32 20 00 20 20 20 20 | 32 34 20 00 20 20 20 20 |12 . |24 . |
|00000080| 20 20 31 34 35 34 34 20 | 20 34 37 37 37 34 37 33 | 14544 | 4777473|
|00000090| 33 30 32 20 20 31 31 34 | 37 37 00 20 30 00 00 00 |302 114|77. 0...|
|000000a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000000b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000000c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000000d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000000e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000000f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000100| 00 75 73 74 61 72 20 20 | 00 6b 79 6c 65 00 00 00 |.ustar |.kyle...|
|00000110| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000120| 00 00 00 00 00 00 00 00 | 00 73 74 61 66 66 00 00 |........|.staff..|
|00000130| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000140| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000150| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000160| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000170| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000180| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000190| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000001a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000001b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000001c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000001d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000001e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000001f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000200| 3b 3b 3b 20 44 65 6c 65 | 74 65 20 61 6e 64 20 65 |;;; Dele|te and e|
|00000210| 78 70 75 6e 67 65 20 63 | 6f 6d 6d 61 6e 64 73 20 |xpunge c|ommands |
|00000220| 66 6f 72 20 56 4d 2e 0a | 3b 3b 3b 20 43 6f 70 79 |for VM..|;;; Copy|
|00000230| 72 69 67 68 74 20 28 43 | 29 20 31 39 38 39 2c 20 |right (C|) 1989, |
|00000240| 31 39 39 30 2c 20 31 39 | 39 31 20 4b 79 6c 65 20 |1990, 19|91 Kyle |
|00000250| 45 2e 20 4a 6f 6e 65 73 | 0a 3b 3b 3b 0a 3b 3b 3b |E. Jones|.;;;.;;;|
|00000260| 20 54 68 69 73 20 70 72 | 6f 67 72 61 6d 20 69 73 | This pr|ogram is|
|00000270| 20 66 72 65 65 20 73 6f | 66 74 77 61 72 65 3b 20 | free so|ftware; |
|00000280| 79 6f 75 20 63 61 6e 20 | 72 65 64 69 73 74 72 69 |you can |redistri|
|00000290| 62 75 74 65 20 69 74 20 | 61 6e 64 2f 6f 72 20 6d |bute it |and/or m|
|000002a0| 6f 64 69 66 79 0a 3b 3b | 3b 20 69 74 20 75 6e 64 |odify.;;|; it und|
|000002b0| 65 72 20 74 68 65 20 74 | 65 72 6d 73 20 6f 66 20 |er the t|erms of |
|000002c0| 74 68 65 20 47 4e 55 20 | 47 65 6e 65 72 61 6c 20 |the GNU |General |
|000002d0| 50 75 62 6c 69 63 20 4c | 69 63 65 6e 73 65 20 61 |Public L|icense a|
|000002e0| 73 20 70 75 62 6c 69 73 | 68 65 64 20 62 79 0a 3b |s publis|hed by.;|
|000002f0| 3b 3b 20 74 68 65 20 46 | 72 65 65 20 53 6f 66 74 |;; the F|ree Soft|
|00000300| 77 61 72 65 20 46 6f 75 | 6e 64 61 74 69 6f 6e 3b |ware Fou|ndation;|
|00000310| 20 65 69 74 68 65 72 20 | 76 65 72 73 69 6f 6e 20 | either |version |
|00000320| 31 2c 20 6f 72 20 28 61 | 74 20 79 6f 75 72 20 6f |1, or (a|t your o|
|00000330| 70 74 69 6f 6e 29 0a 3b | 3b 3b 20 61 6e 79 20 6c |ption).;|;; any l|
|00000340| 61 74 65 72 20 76 65 72 | 73 69 6f 6e 2e 0a 3b 3b |ater ver|sion..;;|
|00000350| 3b 0a 3b 3b 3b 20 54 68 | 69 73 20 70 72 6f 67 72 |;.;;; Th|is progr|
|00000360| 61 6d 20 69 73 20 64 69 | 73 74 72 69 62 75 74 65 |am is di|stribute|
|00000370| 64 20 69 6e 20 74 68 65 | 20 68 6f 70 65 20 74 68 |d in the| hope th|
|00000380| 61 74 20 69 74 20 77 69 | 6c 6c 20 62 65 20 75 73 |at it wi|ll be us|
|00000390| 65 66 75 6c 2c 0a 3b 3b | 3b 20 62 75 74 20 57 49 |eful,.;;|; but WI|
|000003a0| 54 48 4f 55 54 20 41 4e | 59 20 57 41 52 52 41 4e |THOUT AN|Y WARRAN|
|000003b0| 54 59 3b 20 77 69 74 68 | 6f 75 74 20 65 76 65 6e |TY; with|out even|
|000003c0| 20 74 68 65 20 69 6d 70 | 6c 69 65 64 20 77 61 72 | the imp|lied war|
|000003d0| 72 61 6e 74 79 20 6f 66 | 0a 3b 3b 3b 20 4d 45 52 |ranty of|.;;; MER|
|000003e0| 43 48 41 4e 54 41 42 49 | 4c 49 54 59 20 6f 72 20 |CHANTABI|LITY or |
|000003f0| 46 49 54 4e 45 53 53 20 | 46 4f 52 20 41 20 50 41 |FITNESS |FOR A PA|
|00000400| 52 54 49 43 55 4c 41 52 | 20 50 55 52 50 4f 53 45 |RTICULAR| PURPOSE|
|00000410| 2e 20 20 53 65 65 20 74 | 68 65 0a 3b 3b 3b 20 47 |. See t|he.;;; G|
|00000420| 4e 55 20 47 65 6e 65 72 | 61 6c 20 50 75 62 6c 69 |NU Gener|al Publi|
|00000430| 63 20 4c 69 63 65 6e 73 | 65 20 66 6f 72 20 6d 6f |c Licens|e for mo|
|00000440| 72 65 20 64 65 74 61 69 | 6c 73 2e 0a 3b 3b 3b 0a |re detai|ls..;;;.|
|00000450| 3b 3b 3b 20 59 6f 75 20 | 73 68 6f 75 6c 64 20 68 |;;; You |should h|
|00000460| 61 76 65 20 72 65 63 65 | 69 76 65 64 20 61 20 63 |ave rece|ived a c|
|00000470| 6f 70 79 20 6f 66 20 74 | 68 65 20 47 4e 55 20 47 |opy of t|he GNU G|
|00000480| 65 6e 65 72 61 6c 20 50 | 75 62 6c 69 63 20 4c 69 |eneral P|ublic Li|
|00000490| 63 65 6e 73 65 0a 3b 3b | 3b 20 61 6c 6f 6e 67 20 |cense.;;|; along |
|000004a0| 77 69 74 68 20 74 68 69 | 73 20 70 72 6f 67 72 61 |with thi|s progra|
|000004b0| 6d 3b 20 69 66 20 6e 6f | 74 2c 20 77 72 69 74 65 |m; if no|t, write|
|000004c0| 20 74 6f 20 74 68 65 20 | 46 72 65 65 20 53 6f 66 | to the |Free Sof|
|000004d0| 74 77 61 72 65 0a 3b 3b | 3b 20 46 6f 75 6e 64 61 |tware.;;|; Founda|
|000004e0| 74 69 6f 6e 2c 20 49 6e | 63 2e 2c 20 36 37 35 20 |tion, In|c., 675 |
|000004f0| 4d 61 73 73 20 41 76 65 | 2c 20 43 61 6d 62 72 69 |Mass Ave|, Cambri|
|00000500| 64 67 65 2c 20 4d 41 20 | 30 32 31 33 39 2c 20 55 |dge, MA |02139, U|
|00000510| 53 41 2e 0a 0a 28 64 65 | 66 75 6e 20 76 6d 2d 64 |SA...(de|fun vm-d|
|00000520| 65 6c 65 74 65 2d 6d 65 | 73 73 61 67 65 20 28 63 |elete-me|ssage (c|
|00000530| 6f 75 6e 74 29 0a 20 20 | 22 41 64 64 20 74 68 65 |ount). |"Add the|
|00000540| 20 60 64 65 6c 65 74 65 | 64 27 20 61 74 74 72 69 | `delete|d' attri|
|00000550| 62 75 74 65 20 74 6f 20 | 74 68 65 20 63 75 72 72 |bute to |the curr|
|00000560| 65 6e 74 20 6d 65 73 73 | 61 67 65 2e 0a 0a 54 68 |ent mess|age...Th|
|00000570| 65 20 6d 65 73 73 61 67 | 65 20 77 69 6c 6c 20 62 |e messag|e will b|
|00000580| 65 20 70 68 79 73 69 63 | 61 6c 6c 79 20 64 65 6c |e physic|ally del|
|00000590| 65 74 65 64 20 66 72 6f | 6d 20 74 68 65 20 63 75 |eted fro|m the cu|
|000005a0| 72 72 65 6e 74 20 66 6f | 6c 64 65 72 20 74 68 65 |rrent fo|lder the|
|000005b0| 20 6e 65 78 74 0a 74 69 | 6d 65 20 74 68 65 20 63 | next.ti|me the c|
|000005c0| 75 72 72 65 6e 74 20 66 | 6f 6c 64 65 72 20 69 73 |urrent f|older is|
|000005d0| 20 65 78 70 75 6e 67 65 | 64 2e 0a 0a 57 69 74 68 | expunge|d...With|
|000005e0| 20 61 20 70 72 65 66 69 | 78 20 61 72 67 75 6d 65 | a prefi|x argume|
|000005f0| 6e 74 2c 20 74 68 65 20 | 6e 65 78 74 20 43 4f 55 |nt, the |next COU|
|00000600| 4e 54 20 6d 65 73 73 61 | 67 65 73 20 61 72 65 20 |NT messa|ges are |
|00000610| 64 65 6c 65 74 65 64 2e | 20 20 41 20 6e 65 67 61 |deleted.| A nega|
|00000620| 74 69 76 65 0a 61 72 67 | 75 6d 65 6e 74 20 6d 65 |tive.arg|ument me|
|00000630| 61 6e 73 20 74 68 65 20 | 70 72 65 76 69 6f 75 73 |ans the |previous|
|00000640| 20 43 4f 55 4e 54 20 6d | 65 73 73 61 67 65 73 20 | COUNT m|essages |
|00000650| 61 72 65 20 64 65 6c 65 | 74 65 64 2e 0a 0a 57 68 |are dele|ted...Wh|
|00000660| 65 6e 20 69 6e 76 6f 6b | 65 64 20 6f 6e 20 6d 61 |en invok|ed on ma|
|00000670| 72 6b 65 64 20 6d 65 73 | 73 61 67 65 73 20 28 76 |rked mes|sages (v|
|00000680| 69 61 20 76 6d 2d 6e 65 | 78 74 2d 63 6f 6d 6d 61 |ia vm-ne|xt-comma|
|00000690| 6e 64 2d 75 73 65 73 2d | 6d 61 72 6b 73 29 2c 0a |nd-uses-|marks),.|
|000006a0| 61 6c 6c 20 6d 61 72 6b | 65 64 20 6d 65 73 73 61 |all mark|ed messa|
|000006b0| 67 65 73 20 61 72 65 20 | 64 65 6c 65 74 65 64 2c |ges are |deleted,|
|000006c0| 20 6f 74 68 65 72 20 6d | 65 73 73 61 67 65 73 20 | other m|essages |
|000006d0| 61 72 65 20 69 67 6e 6f | 72 65 64 2e 22 0a 20 20 |are igno|red.". |
|000006e0| 28 69 6e 74 65 72 61 63 | 74 69 76 65 20 22 70 22 |(interac|tive "p"|
|000006f0| 29 0a 20 20 28 69 66 20 | 28 69 6e 74 65 72 61 63 |). (if |(interac|
|00000700| 74 69 76 65 2d 70 29 0a | 20 20 20 20 20 20 28 76 |tive-p).| (v|
|00000710| 6d 2d 66 6f 6c 6c 6f 77 | 2d 73 75 6d 6d 61 72 79 |m-follow|-summary|
|00000720| 2d 63 75 72 73 6f 72 29 | 29 0a 20 20 28 76 6d 2d |-cursor)|). (vm-|
|00000730| 73 65 6c 65 63 74 2d 66 | 6f 6c 64 65 72 2d 62 75 |select-f|older-bu|
|00000740| 66 66 65 72 29 0a 20 20 | 28 76 6d 2d 63 68 65 63 |ffer). |(vm-chec|
|00000750| 6b 2d 66 6f 72 2d 6b 69 | 6c 6c 65 64 2d 73 75 6d |k-for-ki|lled-sum|
|00000760| 6d 61 72 79 29 0a 20 20 | 28 76 6d 2d 65 72 72 6f |mary). |(vm-erro|
|00000770| 72 2d 69 66 2d 66 6f 6c | 64 65 72 2d 72 65 61 64 |r-if-fol|der-read|
|00000780| 2d 6f 6e 6c 79 29 0a 20 | 20 28 76 6d 2d 65 72 72 |-only). | (vm-err|
|00000790| 6f 72 2d 69 66 2d 66 6f | 6c 64 65 72 2d 65 6d 70 |or-if-fo|lder-emp|
|000007a0| 74 79 29 0a 20 20 28 6c | 65 74 2a 20 28 28 75 73 |ty). (l|et* ((us|
|000007b0| 65 64 2d 6d 61 72 6b 73 | 20 28 65 71 20 6c 61 73 |ed-marks| (eq las|
|000007c0| 74 2d 63 6f 6d 6d 61 6e | 64 20 27 76 6d 2d 6e 65 |t-comman|d 'vm-ne|
|000007d0| 78 74 2d 63 6f 6d 6d 61 | 6e 64 2d 75 73 65 73 2d |xt-comma|nd-uses-|
|000007e0| 6d 61 72 6b 73 29 29 0a | 09 20 28 6d 6c 69 73 74 |marks)).|. (mlist|
|000007f0| 20 28 76 6d 2d 73 65 6c | 65 63 74 2d 6d 61 72 6b | (vm-sel|ect-mark|
|00000800| 65 64 2d 6f 72 2d 70 72 | 65 66 69 78 65 64 2d 6d |ed-or-pr|efixed-m|
|00000810| 65 73 73 61 67 65 73 20 | 63 6f 75 6e 74 29 29 29 |essages |count)))|
|00000820| 0a 20 20 20 20 28 77 68 | 69 6c 65 20 6d 6c 69 73 |. (wh|ile mlis|
|00000830| 74 0a 20 20 20 20 20 20 | 28 69 66 20 28 6e 6f 74 |t. |(if (not|
|00000840| 20 28 76 6d 2d 64 65 6c | 65 74 65 64 2d 66 6c 61 | (vm-del|eted-fla|
|00000850| 67 20 28 63 61 72 20 6d | 6c 69 73 74 29 29 29 0a |g (car m|list))).|
|00000860| 09 20 20 28 76 6d 2d 73 | 65 74 2d 64 65 6c 65 74 |. (vm-s|et-delet|
|00000870| 65 64 2d 66 6c 61 67 20 | 28 63 61 72 20 6d 6c 69 |ed-flag |(car mli|
|00000880| 73 74 29 20 74 29 29 0a | 20 20 20 20 20 20 28 73 |st) t)).| (s|
|00000890| 65 74 71 20 6d 6c 69 73 | 74 20 28 63 64 72 20 6d |etq mlis|t (cdr m|
|000008a0| 6c 69 73 74 29 29 29 0a | 20 20 20 20 28 76 6d 2d |list))).| (vm-|
|000008b0| 75 70 64 61 74 65 2d 73 | 75 6d 6d 61 72 79 2d 61 |update-s|ummary-a|
|000008c0| 6e 64 2d 6d 6f 64 65 2d | 6c 69 6e 65 29 0a 20 20 |nd-mode-|line). |
|000008d0| 20 20 28 69 66 20 28 61 | 6e 64 20 76 6d 2d 6d 6f | (if (a|nd vm-mo|
|000008e0| 76 65 2d 61 66 74 65 72 | 2d 64 65 6c 65 74 69 6e |ve-after|-deletin|
|000008f0| 67 20 28 6e 6f 74 20 75 | 73 65 64 2d 6d 61 72 6b |g (not u|sed-mark|
|00000900| 73 29 29 0a 09 28 76 6d | 2d 6e 65 78 74 2d 6d 65 |s))..(vm|-next-me|
|00000910| 73 73 61 67 65 20 63 6f | 75 6e 74 20 74 20 65 78 |ssage co|unt t ex|
|00000920| 65 63 75 74 69 6e 67 2d | 6b 62 64 2d 6d 61 63 72 |ecuting-|kbd-macr|
|00000930| 6f 29 29 29 29 0a 0a 28 | 64 65 66 75 6e 20 76 6d |o))))..(|defun vm|
|00000940| 2d 64 65 6c 65 74 65 2d | 6d 65 73 73 61 67 65 2d |-delete-|message-|
|00000950| 62 61 63 6b 77 61 72 64 | 20 28 63 6f 75 6e 74 29 |backward| (count)|
|00000960| 0a 20 20 22 4c 69 6b 65 | 20 76 6d 2d 64 65 6c 65 |. "Like| vm-dele|
|00000970| 74 65 2d 6d 65 73 73 61 | 67 65 2c 20 65 78 63 65 |te-messa|ge, exce|
|00000980| 70 74 20 74 68 61 74 20 | 74 68 65 20 64 65 6c 65 |pt that |the dele|
|00000990| 74 69 6f 6e 20 64 69 72 | 65 63 74 69 6f 6e 20 69 |tion dir|ection i|
|000009a0| 73 20 72 65 76 65 72 73 | 65 64 2e 22 0a 20 20 28 |s revers|ed.". (|
|000009b0| 69 6e 74 65 72 61 63 74 | 69 76 65 20 22 70 22 29 |interact|ive "p")|
|000009c0| 0a 20 20 28 6c 65 74 20 | 28 28 70 72 65 66 69 78 |. (let |((prefix|
|000009d0| 2d 61 72 67 20 28 2d 20 | 63 6f 75 6e 74 29 29 29 |-arg (- |count)))|
|000009e0| 0a 20 20 20 20 28 63 6f | 6d 6d 61 6e 64 2d 65 78 |. (co|mmand-ex|
|000009f0| 65 63 75 74 65 20 27 76 | 6d 2d 64 65 6c 65 74 65 |ecute 'v|m-delete|
|00000a00| 2d 6d 65 73 73 61 67 65 | 29 29 29 0a 0a 28 64 65 |-message|)))..(de|
|00000a10| 66 75 6e 20 76 6d 2d 75 | 6e 64 65 6c 65 74 65 2d |fun vm-u|ndelete-|
|00000a20| 6d 65 73 73 61 67 65 20 | 28 63 6f 75 6e 74 29 0a |message |(count).|
|00000a30| 20 20 22 52 65 6d 6f 76 | 65 20 74 68 65 20 60 64 | "Remov|e the `d|
|00000a40| 65 6c 65 74 65 64 27 20 | 61 74 74 72 69 62 75 74 |eleted' |attribut|
|00000a50| 65 20 66 72 6f 6d 20 74 | 68 65 20 63 75 72 72 65 |e from t|he curre|
|00000a60| 6e 74 20 6d 65 73 73 61 | 67 65 2e 0a 0a 57 69 74 |nt messa|ge...Wit|
|00000a70| 68 20 61 20 70 72 65 66 | 69 78 20 61 72 67 75 6d |h a pref|ix argum|
|00000a80| 65 6e 74 2c 20 74 68 65 | 20 6e 65 78 74 20 43 4f |ent, the| next CO|
|00000a90| 55 4e 54 20 6d 65 73 73 | 61 67 65 73 20 61 72 65 |UNT mess|ages are|
|00000aa0| 20 75 6e 64 65 6c 65 74 | 65 64 2e 20 20 41 0a 6e | undelet|ed. A.n|
|00000ab0| 65 67 61 74 69 76 65 20 | 61 72 67 75 6d 65 6e 74 |egative |argument|
|00000ac0| 20 6d 65 61 6e 73 20 74 | 68 65 20 70 72 65 76 69 | means t|he previ|
|00000ad0| 6f 75 73 20 43 4f 55 4e | 54 20 6d 65 73 73 61 67 |ous COUN|T messag|
|00000ae0| 65 73 20 61 72 65 20 75 | 6e 64 65 6c 65 74 65 64 |es are u|ndeleted|
|00000af0| 2e 0a 0a 57 68 65 6e 20 | 69 6e 76 6f 6b 65 64 20 |...When |invoked |
|00000b00| 6f 6e 20 6d 61 72 6b 65 | 64 20 6d 65 73 73 61 67 |on marke|d messag|
|00000b10| 65 73 20 28 76 69 61 20 | 76 6d 2d 6e 65 78 74 2d |es (via |vm-next-|
|00000b20| 63 6f 6d 6d 61 6e 64 2d | 75 73 65 73 2d 6d 61 72 |command-|uses-mar|
|00000b30| 6b 73 29 2c 0a 61 6c 6c | 20 6d 61 72 6b 65 64 20 |ks),.all| marked |
|00000b40| 6d 65 73 73 61 67 65 73 | 20 61 72 65 20 75 6e 64 |messages| are und|
|00000b50| 65 6c 65 74 65 64 2c 20 | 6f 74 68 65 72 20 6d 65 |eleted, |other me|
|00000b60| 73 73 61 67 65 73 20 61 | 72 65 20 69 67 6e 6f 72 |ssages a|re ignor|
|00000b70| 65 64 2e 22 0a 20 20 28 | 69 6e 74 65 72 61 63 74 |ed.". (|interact|
|00000b80| 69 76 65 20 22 70 22 29 | 0a 20 20 28 69 66 20 28 |ive "p")|. (if (|
|00000b90| 69 6e 74 65 72 61 63 74 | 69 76 65 2d 70 29 0a 20 |interact|ive-p). |
|00000ba0| 20 20 20 20 20 28 76 6d | 2d 66 6f 6c 6c 6f 77 2d | (vm|-follow-|
|00000bb0| 73 75 6d 6d 61 72 79 2d | 63 75 72 73 6f 72 29 29 |summary-|cursor))|
|00000bc0| 0a 20 20 28 76 6d 2d 73 | 65 6c 65 63 74 2d 66 6f |. (vm-s|elect-fo|
|00000bd0| 6c 64 65 72 2d 62 75 66 | 66 65 72 29 0a 20 20 28 |lder-buf|fer). (|
|00000be0| 76 6d 2d 63 68 65 63 6b | 2d 66 6f 72 2d 6b 69 6c |vm-check|-for-kil|
|00000bf0| 6c 65 64 2d 73 75 6d 6d | 61 72 79 29 0a 20 20 28 |led-summ|ary). (|
|00000c00| 76 6d 2d 65 72 72 6f 72 | 2d 69 66 2d 66 6f 6c 64 |vm-error|-if-fold|
|00000c10| 65 72 2d 72 65 61 64 2d | 6f 6e 6c 79 29 0a 20 20 |er-read-|only). |
|00000c20| 28 76 6d 2d 65 72 72 6f | 72 2d 69 66 2d 66 6f 6c |(vm-erro|r-if-fol|
|00000c30| 64 65 72 2d 65 6d 70 74 | 79 29 0a 20 20 28 6c 65 |der-empt|y). (le|
|00000c40| 74 2a 20 28 28 75 73 65 | 64 2d 6d 61 72 6b 73 20 |t* ((use|d-marks |
|00000c50| 28 65 71 20 6c 61 73 74 | 2d 63 6f 6d 6d 61 6e 64 |(eq last|-command|
|00000c60| 20 27 76 6d 2d 6e 65 78 | 74 2d 63 6f 6d 6d 61 6e | 'vm-nex|t-comman|
|00000c70| 64 2d 75 73 65 73 2d 6d | 61 72 6b 73 29 29 0a 09 |d-uses-m|arks))..|
|00000c80| 20 28 6d 6c 69 73 74 20 | 28 76 6d 2d 73 65 6c 65 | (mlist |(vm-sele|
|00000c90| 63 74 2d 6d 61 72 6b 65 | 64 2d 6f 72 2d 70 72 65 |ct-marke|d-or-pre|
|00000ca0| 66 69 78 65 64 2d 6d 65 | 73 73 61 67 65 73 20 63 |fixed-me|ssages c|
|00000cb0| 6f 75 6e 74 29 29 29 0a | 20 20 20 20 28 77 68 69 |ount))).| (whi|
|00000cc0| 6c 65 20 6d 6c 69 73 74 | 0a 20 20 20 20 20 20 28 |le mlist|. (|
|00000cd0| 69 66 20 28 76 6d 2d 64 | 65 6c 65 74 65 64 2d 66 |if (vm-d|eleted-f|
|00000ce0| 6c 61 67 20 28 63 61 72 | 20 6d 6c 69 73 74 29 29 |lag (car| mlist))|
|00000cf0| 0a 09 20 20 28 76 6d 2d | 73 65 74 2d 64 65 6c 65 |.. (vm-|set-dele|
|00000d00| 74 65 64 2d 66 6c 61 67 | 20 28 63 61 72 20 6d 6c |ted-flag| (car ml|
|00000d10| 69 73 74 29 20 6e 69 6c | 29 29 0a 20 20 20 20 20 |ist) nil|)). |
|00000d20| 20 28 73 65 74 71 20 6d | 6c 69 73 74 20 28 63 64 | (setq m|list (cd|
|00000d30| 72 20 6d 6c 69 73 74 29 | 29 29 0a 20 20 20 20 28 |r mlist)|)). (|
|00000d40| 76 6d 2d 75 70 64 61 74 | 65 2d 73 75 6d 6d 61 72 |vm-updat|e-summar|
|00000d50| 79 2d 61 6e 64 2d 6d 6f | 64 65 2d 6c 69 6e 65 29 |y-and-mo|de-line)|
|00000d60| 0a 20 20 20 20 28 69 66 | 20 28 61 6e 64 20 76 6d |. (if| (and vm|
|00000d70| 2d 6d 6f 76 65 2d 61 66 | 74 65 72 2d 75 6e 64 65 |-move-af|ter-unde|
|00000d80| 6c 65 74 69 6e 67 20 28 | 6e 6f 74 20 75 73 65 64 |leting (|not used|
|00000d90| 2d 6d 61 72 6b 73 29 29 | 0a 09 28 76 6d 2d 6e 65 |-marks))|..(vm-ne|
|00000da0| 78 74 2d 6d 65 73 73 61 | 67 65 20 63 6f 75 6e 74 |xt-messa|ge count|
|00000db0| 20 74 20 65 78 65 63 75 | 74 69 6e 67 2d 6b 62 64 | t execu|ting-kbd|
|00000dc0| 2d 6d 61 63 72 6f 29 29 | 29 29 0a 0a 28 64 65 66 |-macro))|))..(def|
|00000dd0| 75 6e 20 76 6d 2d 6b 69 | 6c 6c 2d 73 75 62 6a 65 |un vm-ki|ll-subje|
|00000de0| 63 74 20 28 29 0a 20 20 | 22 44 65 6c 65 74 65 20 |ct (). |"Delete |
|00000df0| 61 6c 6c 20 6d 65 73 73 | 61 67 65 73 20 77 69 74 |all mess|ages wit|
|00000e00| 68 20 74 68 65 20 73 61 | 6d 65 20 73 75 62 6a 65 |h the sa|me subje|
|00000e10| 63 74 20 61 73 20 74 68 | 65 20 63 75 72 72 65 6e |ct as th|e curren|
|00000e20| 74 20 6d 65 73 73 61 67 | 65 0a 5c 28 69 67 6e 6f |t messag|e.\(igno|
|00000e30| 72 69 6e 67 20 72 65 3a | 27 73 29 2e 22 0a 20 20 |ring re:|'s).". |
|00000e40| 28 69 6e 74 65 72 61 63 | 74 69 76 65 29 0a 20 20 |(interac|tive). |
|00000e50| 28 76 6d 2d 66 6f 6c 6c | 6f 77 2d 73 75 6d 6d 61 |(vm-foll|ow-summa|
|00000e60| 72 79 2d 63 75 72 73 6f | 72 29 0a 20 20 28 76 6d |ry-curso|r). (vm|
|00000e70| 2d 73 65 6c 65 63 74 2d | 66 6f 6c 64 65 72 2d 62 |-select-|folder-b|
|00000e80| 75 66 66 65 72 29 0a 20 | 20 28 76 6d 2d 63 68 65 |uffer). | (vm-che|
|00000e90| 63 6b 2d 66 6f 72 2d 6b | 69 6c 6c 65 64 2d 73 75 |ck-for-k|illed-su|
|00000ea0| 6d 6d 61 72 79 29 0a 20 | 20 28 76 6d 2d 65 72 72 |mmary). | (vm-err|
|00000eb0| 6f 72 2d 69 66 2d 66 6f | 6c 64 65 72 2d 72 65 61 |or-if-fo|lder-rea|
|00000ec0| 64 2d 6f 6e 6c 79 29 0a | 20 20 28 76 6d 2d 65 72 |d-only).| (vm-er|
|00000ed0| 72 6f 72 2d 69 66 2d 66 | 6f 6c 64 65 72 2d 65 6d |ror-if-f|older-em|
|00000ee0| 70 74 79 29 0a 20 20 28 | 6c 65 74 20 28 28 73 75 |pty). (|let ((su|
|00000ef0| 62 6a 65 63 74 20 28 76 | 6d 2d 73 75 2d 73 75 62 |bject (v|m-su-sub|
|00000f00| 6a 65 63 74 20 28 63 61 | 72 20 76 6d 2d 6d 65 73 |ject (ca|r vm-mes|
|00000f10| 73 61 67 65 2d 70 6f 69 | 6e 74 65 72 29 29 29 0a |sage-poi|nter))).|
|00000f20| 09 28 6d 70 20 76 6d 2d | 6d 65 73 73 61 67 65 2d |.(mp vm-|message-|
|00000f30| 6c 69 73 74 29 0a 09 28 | 6e 20 30 29 29 0a 20 20 |list)..(|n 0)). |
|00000f40| 20 20 28 69 66 20 28 73 | 74 72 69 6e 67 2d 6d 61 | (if (s|tring-ma|
|00000f50| 74 63 68 20 22 5e 5c 5c | 28 72 65 3a 20 2a 5c 5c |tch "^\\|(re: *\\|
|00000f60| 29 2b 22 20 73 75 62 6a | 65 63 74 29 0a 09 28 73 |)+" subj|ect)..(s|
|00000f70| 65 74 71 20 73 75 62 6a | 65 63 74 20 28 73 75 62 |etq subj|ect (sub|
|00000f80| 73 74 72 69 6e 67 20 73 | 75 62 6a 65 63 74 20 28 |string s|ubject (|
|00000f90| 6d 61 74 63 68 2d 65 6e | 64 20 30 29 29 29 29 0a |match-en|d 0)))).|
|00000fa0| 20 20 20 20 28 73 65 74 | 71 20 73 75 62 6a 65 63 | (set|q subjec|
|00000fb0| 74 20 28 63 6f 6e 63 61 | 74 20 22 5e 5c 5c 28 72 |t (conca|t "^\\(r|
|00000fc0| 65 3a 20 2a 5c 5c 29 2a | 22 20 28 72 65 67 65 78 |e: *\\)*|" (regex|
|00000fd0| 70 2d 71 75 6f 74 65 20 | 73 75 62 6a 65 63 74 29 |p-quote |subject)|
|00000fe0| 20 22 20 2a 24 22 29 29 | 0a 20 20 20 20 28 77 68 | " *$"))|. (wh|
|00000ff0| 69 6c 65 20 6d 70 0a 20 | 20 20 20 20 20 28 69 66 |ile mp. | (if|
|00001000| 20 28 61 6e 64 20 28 6e | 6f 74 20 28 76 6d 2d 64 | (and (n|ot (vm-d|
|00001010| 65 6c 65 74 65 64 2d 66 | 6c 61 67 20 28 63 61 72 |eleted-f|lag (car|
|00001020| 20 6d 70 29 29 29 0a 09 | 20 20 20 20 20 20 20 28 | mp)))..| (|
|00001030| 73 74 72 69 6e 67 2d 6d | 61 74 63 68 20 73 75 62 |string-m|atch sub|
|00001040| 6a 65 63 74 20 28 76 6d | 2d 73 75 2d 73 75 62 6a |ject (vm|-su-subj|
|00001050| 65 63 74 20 28 63 61 72 | 20 6d 70 29 29 29 29 0a |ect (car| mp)))).|
|00001060| 09 20 20 28 70 72 6f 67 | 6e 0a 09 20 20 20 20 28 |. (prog|n.. (|
|00001070| 76 6d 2d 73 65 74 2d 64 | 65 6c 65 74 65 64 2d 66 |vm-set-d|eleted-f|
|00001080| 6c 61 67 20 28 63 61 72 | 20 6d 70 29 20 74 29 0a |lag (car| mp) t).|
|00001090| 09 20 20 20 20 28 76 6d | 2d 69 6e 63 72 65 6d 65 |. (vm|-increme|
|000010a0| 6e 74 20 6e 29 29 29 0a | 20 20 20 20 20 20 28 73 |nt n))).| (s|
|000010b0| 65 74 71 20 6d 70 20 28 | 63 64 72 20 6d 70 29 29 |etq mp (|cdr mp))|
|000010c0| 29 0a 20 20 20 20 28 61 | 6e 64 20 28 69 6e 74 65 |). (a|nd (inte|
|000010d0| 72 61 63 74 69 76 65 2d | 70 29 0a 20 20 20 20 20 |ractive-|p). |
|000010e0| 20 20 28 69 66 20 28 7a | 65 72 6f 70 20 6e 29 0a | (if (z|erop n).|
|000010f0| 09 20 20 20 28 6d 65 73 | 73 61 67 65 20 22 4e 6f |. (mes|sage "No|
|00001100| 20 6d 65 73 73 61 67 65 | 73 20 64 65 6c 65 74 65 | message|s delete|
|00001110| 64 2e 22 29 0a 09 20 28 | 6d 65 73 73 61 67 65 20 |d.").. (|message |
|00001120| 22 25 64 20 6d 65 73 73 | 61 67 65 25 73 20 64 65 |"%d mess|age%s de|
|00001130| 6c 65 74 65 64 22 20 6e | 20 28 69 66 20 28 3d 20 |leted" n| (if (= |
|00001140| 6e 20 31 29 20 22 22 20 | 22 73 22 29 29 29 29 29 |n 1) "" |"s")))))|
|00001150| 0a 20 20 28 76 6d 2d 75 | 70 64 61 74 65 2d 73 75 |. (vm-u|pdate-su|
|00001160| 6d 6d 61 72 79 2d 61 6e | 64 2d 6d 6f 64 65 2d 6c |mmary-an|d-mode-l|
|00001170| 69 6e 65 29 29 0a 0a 28 | 64 65 66 75 6e 20 76 6d |ine))..(|defun vm|
|00001180| 2d 65 78 70 75 6e 67 65 | 2d 66 6f 6c 64 65 72 20 |-expunge|-folder |
|00001190| 28 26 6f 70 74 69 6f 6e | 61 6c 20 71 75 69 74 74 |(&option|al quitt|
|000011a0| 69 6e 67 20 73 68 61 64 | 64 61 70 29 0a 20 20 22 |ing shad|dap). "|
|000011b0| 45 78 70 75 6e 67 65 20 | 64 65 6c 65 74 65 64 20 |Expunge |deleted |
|000011c0| 6d 65 73 73 61 67 65 73 | 2c 20 62 75 74 20 64 6f |messages|, but do|
|000011d0| 6e 27 74 20 73 61 76 65 | 20 66 6f 6c 64 65 72 20 |n't save| folder |
|000011e0| 74 6f 20 64 69 73 6b 20 | 6f 72 20 65 78 69 74 20 |to disk |or exit |
|000011f0| 56 4d 2e 22 0a 20 20 28 | 69 6e 74 65 72 61 63 74 |VM.". (|interact|
|00001200| 69 76 65 29 0a 20 20 28 | 76 6d 2d 73 65 6c 65 63 |ive). (|vm-selec|
|00001210| 74 2d 66 6f 6c 64 65 72 | 2d 62 75 66 66 65 72 29 |t-folder|-buffer)|
|00001220| 0a 20 20 28 76 6d 2d 63 | 68 65 63 6b 2d 66 6f 72 |. (vm-c|heck-for|
|00001230| 2d 6b 69 6c 6c 65 64 2d | 73 75 6d 6d 61 72 79 29 |-killed-|summary)|
|00001240| 0a 20 20 28 76 6d 2d 65 | 72 72 6f 72 2d 69 66 2d |. (vm-e|rror-if-|
|00001250| 66 6f 6c 64 65 72 2d 72 | 65 61 64 2d 6f 6e 6c 79 |folder-r|ead-only|
|00001260| 29 0a 20 20 28 76 6d 2d | 65 72 72 6f 72 2d 69 66 |). (vm-|error-if|
|00001270| 2d 72 65 66 65 72 65 6e | 63 65 64 2d 76 69 72 74 |-referen|ced-virt|
|00001280| 75 61 6c 6c 79 29 0a 20 | 20 28 69 66 20 28 6e 6f |ually). | (if (no|
|00001290| 74 20 73 68 61 64 64 61 | 70 29 0a 20 20 20 20 20 |t shadda|p). |
|000012a0| 20 28 6d 65 73 73 61 67 | 65 20 22 45 78 70 75 6e | (messag|e "Expun|
|000012b0| 67 69 6e 67 2e 2e 2e 22 | 29 29 0a 20 20 28 6c 65 |ging..."|)). (le|
|000012c0| 74 20 28 28 69 6e 68 69 | 62 69 74 2d 71 75 69 74 |t ((inhi|bit-quit|
|000012d0| 20 74 29 20 64 69 64 2d | 67 6f 62 62 6c 65 29 0a | t) did-|gobble).|
|000012e0| 20 20 20 20 28 69 66 20 | 28 73 65 74 71 20 64 69 | (if |(setq di|
|000012f0| 64 2d 67 6f 62 62 6c 65 | 20 28 76 6d 2d 67 6f 62 |d-gobble| (vm-gob|
|00001300| 62 6c 65 2d 64 65 6c 65 | 74 65 64 2d 6d 65 73 73 |ble-dele|ted-mess|
|00001310| 61 67 65 73 29 29 0a 09 | 28 70 72 6f 67 6e 0a 09 |ages))..|(progn..|
|00001320| 20 20 28 73 65 74 71 20 | 76 6d 2d 6e 75 6d 62 65 | (setq |vm-numbe|
|00001330| 72 69 6e 67 2d 72 65 64 | 6f 2d 73 74 61 72 74 2d |ring-red|o-start-|
|00001340| 70 6f 69 6e 74 20 64 69 | 64 2d 67 6f 62 62 6c 65 |point di|d-gobble|
|00001350| 0a 09 09 76 6d 2d 73 75 | 6d 6d 61 72 79 2d 72 65 |...vm-su|mmary-re|
|00001360| 64 6f 2d 73 74 61 72 74 | 2d 70 6f 69 6e 74 20 64 |do-start|-point d|
|00001370| 69 64 2d 67 6f 62 62 6c | 65 0a 09 09 76 6d 2d 74 |id-gobbl|e...vm-t|
|00001380| 6f 74 61 6c 73 20 6e 69 | 6c 29 0a 09 20 20 28 69 |otals ni|l).. (i|
|00001390| 66 20 28 6e 6f 74 20 71 | 75 69 74 74 69 6e 67 29 |f (not q|uitting)|
|000013a0| 0a 09 20 20 20 20 20 20 | 28 70 72 6f 67 6e 0a 09 |.. |(progn..|
|000013b0| 09 28 69 66 20 28 6e 6f | 74 20 73 68 61 64 64 61 |.(if (no|t shadda|
|000013c0| 70 29 0a 09 09 20 20 20 | 20 28 76 6d 2d 64 65 66 |p)... | (vm-def|
|000013d0| 65 72 72 65 64 2d 6d 65 | 73 73 61 67 65 20 22 44 |erred-me|ssage "D|
|000013e0| 65 6c 65 74 65 64 20 6d | 65 73 73 61 67 65 73 20 |eleted m|essages |
|000013f0| 65 78 70 75 6e 67 65 64 | 2e 22 29 29 0a 09 09 28 |expunged|."))...(|
|00001400| 69 66 20 28 6e 75 6c 6c | 20 76 6d 2d 6d 65 73 73 |if (null| vm-mess|
|00001410| 61 67 65 2d 70 6f 69 6e | 74 65 72 29 0a 09 09 20 |age-poin|ter)... |
|00001420| 20 20 20 28 69 66 20 28 | 6e 75 6c 6c 20 76 6d 2d | (if (|null vm-|
|00001430| 6d 65 73 73 61 67 65 2d | 6c 69 73 74 29 0a 09 09 |message-|list)...|
|00001440| 09 28 76 6d 2d 75 70 64 | 61 74 65 2d 73 75 6d 6d |.(vm-upd|ate-summ|
|00001450| 61 72 79 2d 61 6e 64 2d | 6d 6f 64 65 2d 6c 69 6e |ary-and-|mode-lin|
|00001460| 65 29 0a 09 09 20 20 20 | 20 20 20 28 76 6d 2d 6e |e)... | (vm-n|
|00001470| 65 78 74 2d 6d 65 73 73 | 61 67 65 29 29 0a 09 09 |ext-mess|age))...|
|00001480| 20 20 28 69 66 20 28 6e | 75 6c 6c 20 76 6d 2d 73 | (if (n|ull vm-s|
|00001490| 79 73 74 65 6d 2d 73 74 | 61 74 65 29 0a 09 09 20 |ystem-st|ate)... |
|000014a0| 20 20 20 20 20 28 76 6d | 2d 70 72 65 76 69 65 77 | (vm|-preview|
|000014b0| 2d 63 75 72 72 65 6e 74 | 2d 6d 65 73 73 61 67 65 |-current|-message|
|000014c0| 29 0a 09 09 20 20 20 20 | 28 76 6d 2d 75 70 64 61 |)... |(vm-upda|
|000014d0| 74 65 2d 73 75 6d 6d 61 | 72 79 2d 61 6e 64 2d 6d |te-summa|ry-and-m|
|000014e0| 6f 64 65 2d 6c 69 6e 65 | 29 29 29 29 29 29 0a 20 |ode-line|)))))). |
|000014f0| 20 20 20 20 20 28 65 72 | 72 6f 72 20 22 4e 6f 20 | (er|ror "No |
|00001500| 6d 65 73 73 61 67 65 73 | 20 61 72 65 20 66 6c 61 |messages| are fla|
|00001510| 67 67 65 64 20 66 6f 72 | 20 64 65 6c 65 74 69 6f |gged for| deletio|
|00001520| 6e 2e 22 29 29 29 29 0a | 0a 3b 3b 20 52 65 6d 6f |n.")))).|.;; Remo|
|00001530| 76 65 20 61 6e 79 20 6d | 65 73 73 61 67 65 20 6d |ve any m|essage m|
|00001540| 61 72 6b 65 64 20 66 6f | 72 20 64 65 6c 65 74 69 |arked fo|r deleti|
|00001550| 6f 6e 20 66 72 6f 6d 20 | 74 68 65 20 62 75 66 66 |on from |the buff|
|00001560| 65 72 20 61 6e 64 20 74 | 68 65 0a 3b 3b 20 6d 65 |er and t|he.;; me|
|00001570| 73 73 61 67 65 20 6c 69 | 73 74 2e 0a 28 64 65 66 |ssage li|st..(def|
|00001580| 75 6e 20 76 6d 2d 67 6f | 62 62 6c 65 2d 64 65 6c |un vm-go|bble-del|
|00001590| 65 74 65 64 2d 6d 65 73 | 73 61 67 65 73 20 28 29 |eted-mes|sages ()|
|000015a0| 0a 20 20 28 73 61 76 65 | 2d 65 78 63 75 72 73 69 |. (save|-excursi|
|000015b0| 6f 6e 0a 20 20 20 20 28 | 76 6d 2d 73 61 76 65 2d |on. (|vm-save-|
|000015c0| 72 65 73 74 72 69 63 74 | 69 6f 6e 0a 20 20 20 20 |restrict|ion. |
|000015d0| 20 28 77 69 64 65 6e 29 | 0a 20 20 20 20 20 28 6c | (widen)|. (l|
|000015e0| 65 74 20 28 28 6d 70 20 | 76 6d 2d 6d 65 73 73 61 |et ((mp |vm-messa|
|000015f0| 67 65 2d 6c 69 73 74 29 | 0a 09 20 20 20 28 6f 6c |ge-list)|.. (ol|
|00001600| 64 2d 6d 65 73 73 61 67 | 65 2d 6c 69 73 74 20 76 |d-messag|e-list v|
|00001610| 6d 2d 6d 65 73 73 61 67 | 65 2d 6c 69 73 74 29 0a |m-messag|e-list).|
|00001620| 09 20 20 20 76 69 72 74 | 75 61 6c 20 70 72 65 76 |. virt|ual prev|
|00001630| 20 62 75 66 66 65 72 2d | 72 65 61 64 2d 6f 6e 6c | buffer-|read-onl|
|00001640| 79 20 74 61 69 6c 2d 63 | 6f 6e 73 20 64 69 64 2d |y tail-c|ons did-|
|00001650| 67 6f 62 62 6c 65 29 0a | 20 20 20 20 20 20 20 28 |gobble).| (|
|00001660| 73 65 74 71 20 76 69 72 | 74 75 61 6c 0a 09 20 20 |setq vir|tual.. |
|00001670| 20 20 20 28 61 6e 64 20 | 6d 70 20 28 6e 6f 74 20 | (and |mp (not |
|00001680| 28 65 71 20 28 63 61 72 | 20 6d 70 29 20 28 76 6d |(eq (car| mp) (vm|
|00001690| 2d 72 65 61 6c 2d 6d 65 | 73 73 61 67 65 2d 6f 66 |-real-me|ssage-of|
|000016a0| 20 28 63 61 72 20 6d 70 | 29 29 29 29 29 29 0a 20 | (car mp|)))))). |
|000016b0| 20 20 20 20 20 20 28 77 | 68 69 6c 65 20 6d 70 0a | (w|hile mp.|
|000016c0| 09 20 28 69 66 20 28 6e | 6f 74 20 28 76 6d 2d 64 |. (if (n|ot (vm-d|
|000016d0| 65 6c 65 74 65 64 2d 66 | 6c 61 67 20 28 63 61 72 |eleted-f|lag (car|
|000016e0| 20 6d 70 29 29 29 0a 09 | 20 20 20 20 20 28 73 65 | mp)))..| (se|
|000016f0| 74 71 20 70 72 65 76 20 | 6d 70 29 0a 09 20 20 20 |tq prev |mp).. |
|00001700| 28 6f 72 20 64 69 64 2d | 67 6f 62 62 6c 65 20 28 |(or did-|gobble (|
|00001710| 73 65 74 71 20 64 69 64 | 2d 67 6f 62 62 6c 65 20 |setq did|-gobble |
|00001720| 28 6f 72 20 70 72 65 76 | 20 76 6d 2d 6d 65 73 73 |(or prev| vm-mess|
|00001730| 61 67 65 2d 6c 69 73 74 | 29 29 29 0a 09 20 20 20 |age-list|))).. |
|00001740| 28 6f 72 20 76 69 72 74 | 75 61 6c 20 28 64 65 6c |(or virt|ual (del|
|00001750| 65 74 65 2d 72 65 67 69 | 6f 6e 20 28 76 6d 2d 73 |ete-regi|on (vm-s|
|00001760| 74 61 72 74 2d 6f 66 20 | 28 63 61 72 20 6d 70 29 |tart-of |(car mp)|
|00001770| 29 0a 09 09 09 09 20 20 | 20 20 20 20 28 76 6d 2d |)..... | (vm-|
|00001780| 65 6e 64 2d 6f 66 20 28 | 63 61 72 20 6d 70 29 29 |end-of (|car mp))|
|00001790| 29 29 0a 09 20 20 20 28 | 69 66 20 28 6e 75 6c 6c |)).. (|if (null|
|000017a0| 20 70 72 65 76 29 0a 09 | 20 20 20 20 20 20 20 28 | prev)..| (|
|000017b0| 70 72 6f 67 6e 20 28 73 | 65 74 71 20 76 6d 2d 6d |progn (s|etq vm-m|
|000017c0| 65 73 73 61 67 65 2d 6c | 69 73 74 20 28 63 64 72 |essage-l|ist (cdr|
|000017d0| 20 76 6d 2d 6d 65 73 73 | 61 67 65 2d 6c 69 73 74 | vm-mess|age-list|
|000017e0| 29 29 0a 09 09 20 20 20 | 20 20 20 28 76 6d 2d 73 |))... | (vm-s|
|000017f0| 65 74 2d 72 65 76 65 72 | 73 65 2d 6c 69 6e 6b 2d |et-rever|se-link-|
|00001800| 6f 66 20 28 63 61 72 20 | 6d 70 29 20 6e 69 6c 29 |of (car |mp) nil)|
|00001810| 29 0a 09 20 20 20 20 20 | 28 73 65 74 63 64 72 20 |).. |(setcdr |
|00001820| 70 72 65 76 20 28 63 64 | 72 20 6d 70 29 29 0a 09 |prev (cd|r mp))..|
|00001830| 20 20 20 20 20 28 61 6e | 64 20 28 63 64 72 20 6d | (an|d (cdr m|
|00001840| 70 29 20 28 76 6d 2d 73 | 65 74 2d 72 65 76 65 72 |p) (vm-s|et-rever|
|00001850| 73 65 2d 6c 69 6e 6b 2d | 6f 66 20 28 63 61 72 20 |se-link-|of (car |
|00001860| 28 63 64 72 20 6d 70 29 | 29 20 70 72 65 76 29 29 |(cdr mp)|) prev))|
|00001870| 29 29 0a 09 20 28 73 65 | 74 71 20 6d 70 20 28 63 |)).. (se|tq mp (c|
|00001880| 64 72 20 6d 70 29 29 29 | 0a 20 20 20 20 20 20 20 |dr mp)))|. |
|00001890| 28 69 66 20 28 61 6e 64 | 20 64 69 64 2d 67 6f 62 |(if (and| did-gob|
|000018a0| 62 6c 65 20 28 65 71 20 | 64 69 64 2d 67 6f 62 62 |ble (eq |did-gobb|
|000018b0| 6c 65 20 6f 6c 64 2d 6d | 65 73 73 61 67 65 2d 6c |le old-m|essage-l|
|000018c0| 69 73 74 29 29 0a 09 20 | 20 20 28 73 65 74 71 20 |ist)).. | (setq |
|000018d0| 64 69 64 2d 67 6f 62 62 | 6c 65 20 74 29 29 0a 20 |did-gobb|le t)). |
|000018e0| 20 20 20 20 20 20 28 69 | 66 20 64 69 64 2d 67 6f | (i|f did-go|
|000018f0| 62 62 6c 65 0a 09 20 20 | 20 28 70 72 6f 67 6e 0a |bble.. | (progn.|
|00001900| 09 20 20 20 20 20 28 76 | 6d 2d 63 6c 65 61 72 2d |. (v|m-clear-|
|00001910| 65 78 70 75 6e 67 65 2d | 69 6e 76 61 6c 69 64 61 |expunge-|invalida|
|00001920| 74 65 64 2d 75 6e 64 6f | 73 29 0a 09 20 20 20 20 |ted-undo|s).. |
|00001930| 20 28 76 6d 2d 73 65 74 | 2d 62 75 66 66 65 72 2d | (vm-set|-buffer-|
|00001940| 6d 6f 64 69 66 69 65 64 | 2d 70 20 74 29 0a 09 20 |modified|-p t).. |
|00001950| 20 20 20 20 28 73 65 74 | 71 20 76 6d 2d 6d 65 73 | (set|q vm-mes|
|00001960| 73 61 67 65 2d 6f 72 64 | 65 72 2d 63 68 61 6e 67 |sage-ord|er-chang|
|00001970| 65 64 20 76 6d 2d 6d 65 | 73 73 61 67 65 2d 6f 72 |ed vm-me|ssage-or|
|00001980| 64 65 72 2d 73 74 75 66 | 66 65 64 29 0a 09 20 20 |der-stuf|fed).. |
|00001990| 20 20 20 28 63 6f 6e 64 | 20 28 28 61 6e 64 20 76 | (cond| ((and v|
|000019a0| 6d 2d 6c 61 73 74 2d 6d | 65 73 73 61 67 65 2d 70 |m-last-m|essage-p|
|000019b0| 6f 69 6e 74 65 72 0a 09 | 09 09 20 28 76 6d 2d 64 |ointer..|.. (vm-d|
|000019c0| 65 6c 65 74 65 64 2d 66 | 6c 61 67 20 28 63 61 72 |eleted-f|lag (car|
|000019d0| 20 76 6d 2d 6c 61 73 74 | 2d 6d 65 73 73 61 67 65 | vm-last|-message|
|000019e0| 2d 70 6f 69 6e 74 65 72 | 29 29 29 0a 09 09 20 20 |-pointer|)))... |
|000019f0| 20 20 28 73 65 74 71 20 | 76 6d 2d 6c 61 73 74 2d | (setq |vm-last-|
|00001a00| 6d 65 73 73 61 67 65 2d | 70 6f 69 6e 74 65 72 20 |message-|pointer |
|00001a10| 6e 69 6c 29 29 29 0a 09 | 20 20 20 20 20 28 63 6f |nil)))..| (co|
|00001a20| 6e 64 20 28 28 61 6e 64 | 20 76 6d 2d 6d 65 73 73 |nd ((and| vm-mess|
|00001a30| 61 67 65 2d 70 6f 69 6e | 74 65 72 0a 09 09 09 20 |age-poin|ter.... |
|00001a40| 28 76 6d 2d 64 65 6c 65 | 74 65 64 2d 66 6c 61 67 |(vm-dele|ted-flag|
|00001a50| 20 28 63 61 72 20 76 6d | 2d 6d 65 73 73 61 67 65 | (car vm|-message|
|00001a60| 2d 70 6f 69 6e 74 65 72 | 29 29 29 0a 09 09 20 20 |-pointer|)))... |
|00001a70| 20 20 28 73 65 74 71 20 | 76 6d 2d 73 79 73 74 65 | (setq |vm-syste|
|00001a80| 6d 2d 73 74 61 74 65 20 | 6e 69 6c 29 0a 09 09 20 |m-state |nil)... |
|00001a90| 20 20 20 28 73 65 74 71 | 20 6d 70 20 28 63 64 72 | (setq| mp (cdr|
|00001aa0| 20 76 6d 2d 6d 65 73 73 | 61 67 65 2d 70 6f 69 6e | vm-mess|age-poin|
|00001ab0| 74 65 72 29 29 0a 09 09 | 20 20 20 20 28 77 68 69 |ter))...| (whi|
|00001ac0| 6c 65 20 28 61 6e 64 20 | 6d 70 20 28 76 6d 2d 64 |le (and |mp (vm-d|
|00001ad0| 65 6c 65 74 65 64 2d 66 | 6c 61 67 20 28 63 61 72 |eleted-f|lag (car|
|00001ae0| 20 6d 70 29 29 29 0a 09 | 09 20 20 20 20 20 20 28 | mp)))..|. (|
|00001af0| 73 65 74 71 20 6d 70 20 | 28 63 64 72 20 6d 70 29 |setq mp |(cdr mp)|
|00001b00| 29 29 0a 09 09 20 20 20 | 20 28 73 65 74 71 20 76 |))... | (setq v|
|00001b10| 6d 2d 6d 65 73 73 61 67 | 65 2d 70 6f 69 6e 74 65 |m-messag|e-pointe|
|00001b20| 72 0a 09 09 09 20 20 28 | 6f 72 20 6d 70 20 28 76 |r.... (|or mp (v|
|00001b30| 6d 2d 6c 61 73 74 20 76 | 6d 2d 6d 65 73 73 61 67 |m-last v|m-messag|
|00001b40| 65 2d 6c 69 73 74 29 29 | 29 29 29 0a 09 20 20 20 |e-list))|))).. |
|00001b50| 20 20 64 69 64 2d 67 6f | 62 62 6c 65 20 29 29 29 | did-go|bble )))|
|00001b60| 29 29 29 0a 00 00 00 00 | 00 00 00 00 00 00 00 00 |))).....|........|
|00001b70| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001b80| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001b90| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001ba0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001bb0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001bc0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001bd0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001be0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001bf0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001c00| 76 6d 2d 64 69 67 65 73 | 74 2e 65 6c 00 00 00 00 |vm-diges|t.el....|
|00001c10| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001c20| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001c30| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001c40| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001c50| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001c60| 00 00 00 00 20 20 20 36 | 34 34 20 00 20 20 20 20 |.... 6|44 . |
|00001c70| 31 32 20 00 20 20 20 20 | 32 34 20 00 20 20 20 20 |12 . |24 . |
|00001c80| 20 20 31 36 34 37 32 20 | 20 34 37 37 37 34 37 33 | 16472 | 4777473|
|00001c90| 33 30 32 20 20 31 31 35 | 31 36 00 20 30 00 00 00 |302 115|16. 0...|
|00001ca0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001cb0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001cc0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001cd0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001ce0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001cf0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001d00| 00 75 73 74 61 72 20 20 | 00 6b 79 6c 65 00 00 00 |.ustar |.kyle...|
|00001d10| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001d20| 00 00 00 00 00 00 00 00 | 00 73 74 61 66 66 00 00 |........|.staff..|
|00001d30| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001d40| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001d50| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001d60| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001d70| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001d80| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001d90| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001da0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001db0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001dc0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001dd0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001de0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001df0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001e00| 3b 3b 3b 20 53 75 70 70 | 6f 72 74 20 63 6f 64 65 |;;; Supp|ort code|
|00001e10| 20 66 6f 72 20 52 46 43 | 39 33 34 20 64 69 67 65 | for RFC|934 dige|
|00001e20| 73 74 73 0a 3b 3b 3b 20 | 43 6f 70 79 72 69 67 68 |sts.;;; |Copyrigh|
|00001e30| 74 20 28 43 29 20 31 39 | 38 39 2c 20 31 39 39 30 |t (C) 19|89, 1990|
|00001e40| 20 4b 79 6c 65 20 45 2e | 20 4a 6f 6e 65 73 0a 3b | Kyle E.| Jones.;|
|00001e50| 3b 3b 0a 3b 3b 3b 20 54 | 68 69 73 20 70 72 6f 67 |;;.;;; T|his prog|
|00001e60| 72 61 6d 20 69 73 20 66 | 72 65 65 20 73 6f 66 74 |ram is f|ree soft|
|00001e70| 77 61 72 65 3b 20 79 6f | 75 20 63 61 6e 20 72 65 |ware; yo|u can re|
|00001e80| 64 69 73 74 72 69 62 75 | 74 65 20 69 74 20 61 6e |distribu|te it an|
|00001e90| 64 2f 6f 72 20 6d 6f 64 | 69 66 79 0a 3b 3b 3b 20 |d/or mod|ify.;;; |
|00001ea0| 69 74 20 75 6e 64 65 72 | 20 74 68 65 20 74 65 72 |it under| the ter|
|00001eb0| 6d 73 20 6f 66 20 74 68 | 65 20 47 4e 55 20 47 65 |ms of th|e GNU Ge|
|00001ec0| 6e 65 72 61 6c 20 50 75 | 62 6c 69 63 20 4c 69 63 |neral Pu|blic Lic|
|00001ed0| 65 6e 73 65 20 61 73 20 | 70 75 62 6c 69 73 68 65 |ense as |publishe|
|00001ee0| 64 20 62 79 0a 3b 3b 3b | 20 74 68 65 20 46 72 65 |d by.;;;| the Fre|
|00001ef0| 65 20 53 6f 66 74 77 61 | 72 65 20 46 6f 75 6e 64 |e Softwa|re Found|
|00001f00| 61 74 69 6f 6e 3b 20 65 | 69 74 68 65 72 20 76 65 |ation; e|ither ve|
|00001f10| 72 73 69 6f 6e 20 31 2c | 20 6f 72 20 28 61 74 20 |rsion 1,| or (at |
|00001f20| 79 6f 75 72 20 6f 70 74 | 69 6f 6e 29 0a 3b 3b 3b |your opt|ion).;;;|
|00001f30| 20 61 6e 79 20 6c 61 74 | 65 72 20 76 65 72 73 69 | any lat|er versi|
|00001f40| 6f 6e 2e 0a 3b 3b 3b 0a | 3b 3b 3b 20 54 68 69 73 |on..;;;.|;;; This|
|00001f50| 20 70 72 6f 67 72 61 6d | 20 69 73 20 64 69 73 74 | program| is dist|
|00001f60| 72 69 62 75 74 65 64 20 | 69 6e 20 74 68 65 20 68 |ributed |in the h|
|00001f70| 6f 70 65 20 74 68 61 74 | 20 69 74 20 77 69 6c 6c |ope that| it will|
|00001f80| 20 62 65 20 75 73 65 66 | 75 6c 2c 0a 3b 3b 3b 20 | be usef|ul,.;;; |
|00001f90| 62 75 74 20 57 49 54 48 | 4f 55 54 20 41 4e 59 20 |but WITH|OUT ANY |
|00001fa0| 57 41 52 52 41 4e 54 59 | 3b 20 77 69 74 68 6f 75 |WARRANTY|; withou|
|00001fb0| 74 20 65 76 65 6e 20 74 | 68 65 20 69 6d 70 6c 69 |t even t|he impli|
|00001fc0| 65 64 20 77 61 72 72 61 | 6e 74 79 20 6f 66 0a 3b |ed warra|nty of.;|
|00001fd0| 3b 3b 20 4d 45 52 43 48 | 41 4e 54 41 42 49 4c 49 |;; MERCH|ANTABILI|
|00001fe0| 54 59 20 6f 72 20 46 49 | 54 4e 45 53 53 20 46 4f |TY or FI|TNESS FO|
|00001ff0| 52 20 41 20 50 41 52 54 | 49 43 55 4c 41 52 20 50 |R A PART|ICULAR P|
|00002000| 55 52 50 4f 53 45 2e 20 | 20 53 65 65 20 74 68 65 |URPOSE. | See the|
|00002010| 0a 3b 3b 3b 20 47 4e 55 | 20 47 65 6e 65 72 61 6c |.;;; GNU| General|
|00002020| 20 50 75 62 6c 69 63 20 | 4c 69 63 65 6e 73 65 20 | Public |License |
|00002030| 66 6f 72 20 6d 6f 72 65 | 20 64 65 74 61 69 6c 73 |for more| details|
|00002040| 2e 0a 3b 3b 3b 0a 3b 3b | 3b 20 59 6f 75 20 73 68 |..;;;.;;|; You sh|
|00002050| 6f 75 6c 64 20 68 61 76 | 65 20 72 65 63 65 69 76 |ould hav|e receiv|
|00002060| 65 64 20 61 20 63 6f 70 | 79 20 6f 66 20 74 68 65 |ed a cop|y of the|
|00002070| 20 47 4e 55 20 47 65 6e | 65 72 61 6c 20 50 75 62 | GNU Gen|eral Pub|
|00002080| 6c 69 63 20 4c 69 63 65 | 6e 73 65 0a 3b 3b 3b 20 |lic Lice|nse.;;; |
|00002090| 61 6c 6f 6e 67 20 77 69 | 74 68 20 74 68 69 73 20 |along wi|th this |
|000020a0| 70 72 6f 67 72 61 6d 3b | 20 69 66 20 6e 6f 74 2c |program;| if not,|
|000020b0| 20 77 72 69 74 65 20 74 | 6f 20 74 68 65 20 46 72 | write t|o the Fr|
|000020c0| 65 65 20 53 6f 66 74 77 | 61 72 65 0a 3b 3b 3b 20 |ee Softw|are.;;; |
|000020d0| 46 6f 75 6e 64 61 74 69 | 6f 6e 2c 20 49 6e 63 2e |Foundati|on, Inc.|
|000020e0| 2c 20 36 37 35 20 4d 61 | 73 73 20 41 76 65 2c 20 |, 675 Ma|ss Ave, |
|000020f0| 43 61 6d 62 72 69 64 67 | 65 2c 20 4d 41 20 30 32 |Cambridg|e, MA 02|
|00002100| 31 33 39 2c 20 55 53 41 | 2e 0a 0a 28 64 65 66 75 |139, USA|...(defu|
|00002110| 6e 20 76 6d 2d 72 66 63 | 39 33 34 2d 63 68 61 72 |n vm-rfc|934-char|
|00002120| 2d 73 74 75 66 66 2d 72 | 65 67 69 6f 6e 20 28 73 |-stuff-r|egion (s|
|00002130| 74 61 72 74 20 65 6e 64 | 29 0a 20 20 28 73 65 74 |tart end|). (set|
|00002140| 71 20 65 6e 64 20 28 76 | 6d 2d 6d 61 72 6b 65 72 |q end (v|m-marker|
|00002150| 20 65 6e 64 29 29 0a 20 | 20 28 73 61 76 65 2d 65 | end)). | (save-e|
|00002160| 78 63 75 72 73 69 6f 6e | 0a 20 20 20 20 28 67 6f |xcursion|. (go|
|00002170| 74 6f 2d 63 68 61 72 20 | 73 74 61 72 74 29 0a 20 |to-char |start). |
|00002180| 20 20 20 28 77 68 69 6c | 65 20 28 61 6e 64 20 28 | (whil|e (and (|
|00002190| 3c 20 28 70 6f 69 6e 74 | 29 20 65 6e 64 29 20 28 |< (point|) end) (|
|000021a0| 72 65 2d 73 65 61 72 63 | 68 2d 66 6f 72 77 61 72 |re-searc|h-forwar|
|000021b0| 64 20 22 5e 2d 22 20 65 | 6e 64 20 74 29 29 0a 20 |d "^-" e|nd t)). |
|000021c0| 20 20 20 20 20 28 72 65 | 70 6c 61 63 65 2d 6d 61 | (re|place-ma|
|000021d0| 74 63 68 20 22 2d 20 2d | 22 20 74 20 74 29 29 29 |tch "- -|" t t)))|
|000021e0| 0a 20 20 28 73 65 74 2d | 6d 61 72 6b 65 72 20 65 |. (set-|marker e|
|000021f0| 6e 64 20 6e 69 6c 29 29 | 0a 0a 28 64 65 66 75 6e |nd nil))|..(defun|
|00002200| 20 76 6d 2d 72 66 63 39 | 33 34 2d 63 68 61 72 2d | vm-rfc9|34-char-|
|00002210| 75 6e 73 74 75 66 66 2d | 72 65 67 69 6f 6e 20 28 |unstuff-|region (|
|00002220| 73 74 61 72 74 20 65 6e | 64 29 0a 20 20 28 73 65 |start en|d). (se|
|00002230| 74 71 20 65 6e 64 20 28 | 76 6d 2d 6d 61 72 6b 65 |tq end (|vm-marke|
|00002240| 72 20 65 6e 64 29 29 0a | 20 20 28 73 61 76 65 2d |r end)).| (save-|
|00002250| 65 78 63 75 72 73 69 6f | 6e 0a 20 20 20 20 28 67 |excursio|n. (g|
|00002260| 6f 74 6f 2d 63 68 61 72 | 20 73 74 61 72 74 29 0a |oto-char| start).|
|00002270| 20 20 20 20 28 77 68 69 | 6c 65 20 28 61 6e 64 20 | (whi|le (and |
|00002280| 28 3c 20 28 70 6f 69 6e | 74 29 20 65 6e 64 29 20 |(< (poin|t) end) |
|00002290| 28 72 65 2d 73 65 61 72 | 63 68 2d 66 6f 72 77 61 |(re-sear|ch-forwa|
|000022a0| 72 64 20 22 5e 2d 20 22 | 20 20 65 6e 64 20 74 29 |rd "^- "| end t)|
|000022b0| 29 0a 20 20 20 20 20 20 | 28 72 65 70 6c 61 63 65 |). |(replace|
|000022c0| 2d 6d 61 74 63 68 20 22 | 22 20 74 20 74 29 0a 20 |-match "|" t t). |
|000022d0| 20 20 20 20 20 28 66 6f | 72 77 61 72 64 2d 63 68 | (fo|rward-ch|
|000022e0| 61 72 29 29 29 0a 20 20 | 28 73 65 74 2d 6d 61 72 |ar))). |(set-mar|
|000022f0| 6b 65 72 20 65 6e 64 20 | 6e 69 6c 29 29 0a 0a 28 |ker end |nil))..(|
|00002300| 64 65 66 75 6e 20 76 6d | 2d 64 69 67 65 73 74 69 |defun vm|-digesti|
|00002310| 66 79 2d 72 65 67 69 6f | 6e 20 28 73 74 61 72 74 |fy-regio|n (start|
|00002320| 20 65 6e 64 29 0a 20 20 | 28 73 65 74 71 20 65 6e | end). |(setq en|
|00002330| 64 20 28 76 6d 2d 6d 61 | 72 6b 65 72 20 65 6e 64 |d (vm-ma|rker end|
|00002340| 29 29 0a 20 20 28 6c 65 | 74 20 28 28 73 65 70 61 |)). (le|t ((sepa|
|00002350| 72 61 74 6f 72 2d 72 65 | 67 65 78 70 20 28 69 66 |rator-re|gexp (if|
|00002360| 20 28 65 71 20 76 6d 2d | 66 6f 6c 64 65 72 2d 74 | (eq vm-|folder-t|
|00002370| 79 70 65 20 27 6d 6d 64 | 66 29 0a 09 09 09 20 20 |ype 'mmd|f).... |
|00002380| 20 20 20 20 22 5c 6e 2b | 5c 30 30 31 5c 30 30 31 | "\n+|\001\001|
|00002390| 5c 30 30 31 5c 30 30 31 | 5c 6e 5c 30 30 31 5c 30 |\001\001|\n\001\0|
|000023a0| 30 31 5c 30 30 31 5c 30 | 30 31 22 0a 09 09 09 20 |01\001\0|01".... |
|000023b0| 20 20 20 22 5c 6e 2b 5c | 6e 46 72 6f 6d 20 2e 2a | "\n+\|nFrom .*|
|000023c0| 22 29 29 29 0a 20 20 20 | 20 28 73 61 76 65 2d 65 |"))). | (save-e|
|000023d0| 78 63 75 72 73 69 6f 6e | 0a 20 20 20 20 20 20 28 |xcursion|. (|
|000023e0| 76 6d 2d 72 66 63 39 33 | 34 2d 63 68 61 72 2d 73 |vm-rfc93|4-char-s|
|000023f0| 74 75 66 66 2d 72 65 67 | 69 6f 6e 20 73 74 61 72 |tuff-reg|ion star|
|00002400| 74 20 65 6e 64 29 0a 20 | 20 20 20 20 20 28 67 6f |t end). | (go|
|00002410| 74 6f 2d 63 68 61 72 20 | 73 74 61 72 74 29 0a 20 |to-char |start). |
|00002420| 20 20 20 20 20 28 69 6e | 73 65 72 74 2d 62 65 66 | (in|sert-bef|
|00002430| 6f 72 65 2d 6d 61 72 6b | 65 72 73 20 22 2d 2d 2d |ore-mark|ers "---|
|00002440| 2d 2d 2d 2d 20 53 74 61 | 72 74 20 6f 66 20 64 69 |---- Sta|rt of di|
|00002450| 67 65 73 74 20 2d 2d 2d | 2d 2d 2d 2d 5c 6e 22 29 |gest ---|----\n")|
|00002460| 0a 20 20 20 20 20 20 28 | 64 65 6c 65 74 65 2d 72 |. (|delete-r|
|00002470| 65 67 69 6f 6e 20 28 70 | 6f 69 6e 74 29 20 28 70 |egion (p|oint) (p|
|00002480| 72 6f 67 6e 20 28 66 6f | 72 77 61 72 64 2d 6c 69 |rogn (fo|rward-li|
|00002490| 6e 65 29 20 28 70 6f 69 | 6e 74 29 29 29 0a 20 20 |ne) (poi|nt))). |
|000024a0| 20 20 20 20 28 77 68 69 | 6c 65 20 28 72 65 2d 73 | (whi|le (re-s|
|000024b0| 65 61 72 63 68 2d 66 6f | 72 77 61 72 64 20 73 65 |earch-fo|rward se|
|000024c0| 70 61 72 61 74 6f 72 2d | 72 65 67 65 78 70 20 65 |parator-|regexp e|
|000024d0| 6e 64 20 74 29 0a 09 28 | 72 65 70 6c 61 63 65 2d |nd t)..(|replace-|
|000024e0| 6d 61 74 63 68 20 22 5c | 6e 5c 6e 2d 2d 2d 2d 2d |match "\|n\n-----|
|000024f0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002500| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 5c 6e 22 20 74 20 6e |--------|-\n" t n|
|00002510| 69 6c 29 29 0a 20 20 20 | 20 20 20 28 67 6f 74 6f |il)). | (goto|
|00002520| 2d 63 68 61 72 20 65 6e | 64 29 0a 20 20 20 20 20 |-char en|d). |
|00002530| 20 28 69 66 20 28 65 71 | 20 76 6d 2d 66 6f 6c 64 | (if (eq| vm-fold|
|00002540| 65 72 2d 74 79 70 65 20 | 27 6d 6d 64 66 29 0a 09 |er-type |'mmdf)..|
|00002550| 20 20 28 64 65 6c 65 74 | 65 2d 72 65 67 69 6f 6e | (delet|e-region|
|00002560| 20 28 70 6f 69 6e 74 29 | 20 28 70 72 6f 67 6e 20 | (point)| (progn |
|00002570| 28 66 6f 72 77 61 72 64 | 2d 6c 69 6e 65 20 2d 31 |(forward|-line -1|
|00002580| 29 20 28 70 6f 69 6e 74 | 29 29 29 29 0a 20 20 20 |) (point|)))). |
|00002590| 20 20 20 28 69 6e 73 65 | 72 74 2d 62 65 66 6f 72 | (inse|rt-befor|
|000025a0| 65 2d 6d 61 72 6b 65 72 | 73 20 22 2d 2d 2d 2d 2d |e-marker|s "-----|
|000025b0| 2d 2d 20 45 6e 64 20 6f | 66 20 64 69 67 65 73 74 |-- End o|f digest|
|000025c0| 20 2d 2d 2d 2d 2d 2d 2d | 5c 6e 22 29 29 29 0a 20 | -------|\n"))). |
|000025d0| 20 28 73 65 74 2d 6d 61 | 72 6b 65 72 20 65 6e 64 | (set-ma|rker end|
|000025e0| 20 6e 69 6c 29 29 0a 0a | 28 64 65 66 75 6e 20 76 | nil))..|(defun v|
|000025f0| 6d 2d 62 75 72 73 74 2d | 64 69 67 65 73 74 20 28 |m-burst-|digest (|
|00002600| 26 6f 70 74 69 6f 6e 61 | 6c 20 67 72 6f 74 74 79 |&optiona|l grotty|
|00002610| 2d 64 69 67 65 73 74 29 | 0a 20 20 22 42 75 72 73 |-digest)|. "Burs|
|00002620| 74 20 74 68 65 20 63 75 | 72 72 65 6e 74 20 6d 65 |t the cu|rrent me|
|00002630| 73 73 61 67 65 20 28 61 | 20 64 69 67 65 73 74 29 |ssage (a| digest)|
|00002640| 20 69 6e 74 6f 20 69 74 | 73 20 69 6e 64 69 76 69 | into it|s indivi|
|00002650| 64 75 61 6c 20 6d 65 73 | 73 61 67 65 73 2e 0a 54 |dual mes|sages..T|
|00002660| 68 65 20 64 69 67 65 73 | 74 27 73 20 6d 65 73 73 |he diges|t's mess|
|00002670| 61 67 65 73 20 61 72 65 | 20 61 73 73 69 6d 69 6c |ages are| assimil|
|00002680| 61 74 65 64 20 69 6e 74 | 6f 20 74 68 65 20 66 6f |ated int|o the fo|
|00002690| 6c 64 65 72 20 61 73 20 | 6e 65 77 20 6d 61 69 6c |lder as |new mail|
|000026a0| 20 77 6f 75 6c 64 20 62 | 65 2c 0a 65 2e 67 2e 20 | would b|e,.e.g. |
|000026b0| 6d 65 73 73 61 67 65 20 | 67 72 6f 75 70 69 6e 67 |message |grouping|
|000026c0| 20 74 61 6b 65 73 20 70 | 6c 61 63 65 20 61 6e 64 | takes p|lace and|
|000026d0| 20 69 66 20 79 6f 75 27 | 72 65 20 6e 6f 74 20 72 | if you'|re not r|
|000026e0| 65 61 64 69 6e 67 20 61 | 20 6d 65 73 73 61 67 65 |eading a| message|
|000026f0| 0a 79 6f 75 20 77 69 6c | 6c 20 62 65 20 6d 6f 76 |.you wil|l be mov|
|00002700| 65 64 20 74 6f 20 74 68 | 65 20 66 69 72 73 74 20 |ed to th|e first |
|00002710| 6e 65 77 20 6f 72 20 75 | 6e 72 65 61 64 20 6d 65 |new or u|nread me|
|00002720| 73 73 61 67 65 2e 0a 0a | 42 79 20 64 65 66 61 75 |ssage...|By defau|
|00002730| 6c 74 20 56 4d 20 65 78 | 70 65 63 74 73 20 64 69 |lt VM ex|pects di|
|00002740| 67 65 73 74 73 20 74 6f | 20 62 65 20 69 6e 20 74 |gests to| be in t|
|00002750| 68 65 20 73 74 61 6e 64 | 61 72 64 20 52 46 43 20 |he stand|ard RFC |
|00002760| 39 33 34 20 66 6f 72 6d | 61 74 2e 0a 41 20 70 72 |934 form|at..A pr|
|00002770| 65 66 69 78 20 77 69 6c | 6c 20 69 6e 76 65 69 67 |efix wil|l inveig|
|00002780| 6c 65 20 56 4d 20 69 6e | 74 6f 20 63 6f 70 69 6e |le VM in|to copin|
|00002790| 67 20 77 69 74 68 20 6f | 74 68 65 72 20 64 69 67 |g with o|ther dig|
|000027a0| 65 73 74 20 66 6f 72 6d | 61 74 73 2c 0a 77 69 74 |est form|ats,.wit|
|000027b0| 68 20 6d 69 78 65 64 20 | 72 65 73 75 6c 74 73 2e |h mixed |results.|
|000027c0| 22 0a 20 20 28 69 6e 74 | 65 72 61 63 74 69 76 65 |". (int|eractive|
|000027d0| 20 22 50 22 29 0a 20 20 | 28 76 6d 2d 66 6f 6c 6c | "P"). |(vm-foll|
|000027e0| 6f 77 2d 73 75 6d 6d 61 | 72 79 2d 63 75 72 73 6f |ow-summa|ry-curso|
|000027f0| 72 29 0a 20 20 28 76 6d | 2d 73 65 6c 65 63 74 2d |r). (vm|-select-|
|00002800| 66 6f 6c 64 65 72 2d 62 | 75 66 66 65 72 29 0a 20 |folder-b|uffer). |
|00002810| 20 28 76 6d 2d 63 68 65 | 63 6b 2d 66 6f 72 2d 6b | (vm-che|ck-for-k|
|00002820| 69 6c 6c 65 64 2d 73 75 | 6d 6d 61 72 79 29 0a 20 |illed-su|mmary). |
|00002830| 20 28 76 6d 2d 65 72 72 | 6f 72 2d 69 66 2d 76 69 | (vm-err|or-if-vi|
|00002840| 72 74 75 61 6c 2d 66 6f | 6c 64 65 72 29 0a 20 20 |rtual-fo|lder). |
|00002850| 28 76 6d 2d 65 72 72 6f | 72 2d 69 66 2d 66 6f 6c |(vm-erro|r-if-fol|
|00002860| 64 65 72 2d 72 65 61 64 | 2d 6f 6e 6c 79 29 0a 20 |der-read|-only). |
|00002870| 20 28 76 6d 2d 65 72 72 | 6f 72 2d 69 66 2d 66 6f | (vm-err|or-if-fo|
|00002880| 6c 64 65 72 2d 65 6d 70 | 74 79 29 0a 20 20 28 6d |lder-emp|ty). (m|
|00002890| 65 73 73 61 67 65 20 22 | 42 75 72 73 74 69 6e 67 |essage "|Bursting|
|000028a0| 20 25 73 64 69 67 65 73 | 74 2e 2e 2e 22 20 28 69 | %sdiges|t..." (i|
|000028b0| 66 20 67 72 6f 74 74 79 | 2d 64 69 67 65 73 74 20 |f grotty|-digest |
|000028c0| 22 28 70 6f 73 73 69 62 | 6c 65 20 67 72 6f 74 74 |"(possib|le grott|
|000028d0| 79 29 20 22 20 22 22 29 | 29 0a 20 20 28 6c 65 74 |y) " "")|). (let|
|000028e0| 20 28 28 69 6e 68 69 62 | 69 74 2d 71 75 69 74 20 | ((inhib|it-quit |
|000028f0| 74 29 20 73 74 61 72 74 | 20 65 6e 64 20 72 65 67 |t) start| end reg|
|00002900| 2d 73 74 61 72 74 20 6c | 65 61 64 65 72 20 74 72 |-start l|eader tr|
|00002910| 61 69 6c 65 72 20 65 72 | 72 6f 72 2d 64 61 74 61 |ailer er|ror-data|
|00002920| 0a 09 28 72 65 67 2d 65 | 6e 64 20 28 76 6d 2d 6d |..(reg-e|nd (vm-m|
|00002930| 61 72 6b 65 72 20 6e 69 | 6c 29 29 0a 09 28 74 65 |arker ni|l))..(te|
|00002940| 78 74 2d 73 74 61 72 74 | 20 28 76 6d 2d 6d 61 72 |xt-start| (vm-mar|
|00002950| 6b 65 72 20 6e 69 6c 29 | 29 0a 09 28 62 75 66 66 |ker nil)|)..(buff|
|00002960| 65 72 2d 72 65 61 64 2d | 6f 6e 6c 79 29 0a 09 28 |er-read-|only)..(|
|00002970| 6f 6c 64 2d 62 75 66 66 | 65 72 2d 6d 6f 64 69 66 |old-buff|er-modif|
|00002980| 69 65 64 2d 70 20 28 62 | 75 66 66 65 72 2d 6d 6f |ied-p (b|uffer-mo|
|00002990| 64 69 66 69 65 64 2d 70 | 29 29 0a 09 28 6d 20 28 |dified-p|))..(m (|
|000029a0| 63 61 72 20 76 6d 2d 6d | 65 73 73 61 67 65 2d 70 |car vm-m|essage-p|
|000029b0| 6f 69 6e 74 65 72 29 29 | 29 0a 20 20 20 20 28 73 |ointer))|). (s|
|000029c0| 61 76 65 2d 65 78 63 75 | 72 73 69 6f 6e 0a 20 20 |ave-excu|rsion. |
|000029d0| 20 20 20 20 28 76 6d 2d | 73 61 76 65 2d 72 65 73 | (vm-|save-res|
|000029e0| 74 72 69 63 74 69 6f 6e | 0a 20 20 20 20 20 20 20 |triction|. |
|000029f0| 28 63 6f 6e 64 69 74 69 | 6f 6e 2d 63 61 73 65 20 |(conditi|on-case |
|00002a00| 65 72 72 6f 72 2d 64 61 | 74 61 0a 09 20 20 20 28 |error-da|ta.. (|
|00002a10| 70 72 6f 67 6e 0a 09 20 | 20 20 20 20 28 77 69 64 |progn.. | (wid|
|00002a20| 65 6e 29 0a 09 20 20 20 | 20 20 28 67 6f 74 6f 2d |en).. | (goto-|
|00002a30| 63 68 61 72 20 28 70 6f | 69 6e 74 2d 6d 61 78 29 |char (po|int-max)|
|00002a40| 29 0a 09 20 20 20 20 20 | 28 73 65 74 71 20 73 74 |).. |(setq st|
|00002a50| 61 72 74 20 28 70 6f 69 | 6e 74 29 29 0a 09 20 20 |art (poi|nt)).. |
|00002a60| 20 20 20 28 69 6e 73 65 | 72 74 2d 62 75 66 66 65 | (inse|rt-buffe|
|00002a70| 72 2d 73 75 62 73 74 72 | 69 6e 67 20 28 63 75 72 |r-substr|ing (cur|
|00002a80| 72 65 6e 74 2d 62 75 66 | 66 65 72 29 0a 09 09 09 |rent-buf|fer)....|
|00002a90| 09 20 20 20 20 20 20 28 | 76 6d 2d 74 65 78 74 2d |. (|vm-text-|
|00002aa0| 6f 66 20 28 63 61 72 20 | 76 6d 2d 6d 65 73 73 61 |of (car |vm-messa|
|00002ab0| 67 65 2d 70 6f 69 6e 74 | 65 72 29 29 0a 09 09 09 |ge-point|er))....|
|00002ac0| 09 20 20 20 20 20 20 28 | 76 6d 2d 74 65 78 74 2d |. (|vm-text-|
|00002ad0| 65 6e 64 2d 6f 66 0a 09 | 09 09 09 20 20 20 20 20 |end-of..|... |
|00002ae0| 20 20 28 63 61 72 20 76 | 6d 2d 6d 65 73 73 61 67 | (car v|m-messag|
|00002af0| 65 2d 70 6f 69 6e 74 65 | 72 29 29 29 0a 09 20 20 |e-pointe|r))).. |
|00002b00| 20 20 20 28 69 66 20 28 | 6e 6f 74 0a 09 09 20 20 | (if (|not... |
|00002b10| 28 72 65 2d 73 65 61 72 | 63 68 2d 62 61 63 6b 77 |(re-sear|ch-backw|
|00002b20| 61 72 64 20 22 5c 5c 28 | 5e 2d 5b 5e 20 5d 2e 2a |ard "\\(|^-[^ ].*|
|00002b30| 5c 6e 2b 5c 5c 7c 5e 2d | 5c 6e 2b 5c 5c 29 2b 22 |\n+\\|^-|\n+\\)+"|
|00002b40| 20 73 74 61 72 74 20 74 | 29 29 0a 09 09 20 28 65 | start t|))... (e|
|00002b50| 72 72 6f 72 20 22 66 69 | 6e 61 6c 20 6d 65 73 73 |rror "fi|nal mess|
|00002b60| 61 67 65 20 73 65 70 61 | 72 61 74 6f 72 20 6e 6f |age sepa|rator no|
|00002b70| 74 20 66 6f 75 6e 64 22 | 29 0a 09 20 20 20 20 20 |t found"|).. |
|00002b80| 20 20 28 73 65 74 71 20 | 65 6e 64 20 28 70 6f 69 | (setq |end (poi|
|00002b90| 6e 74 2d 6d 61 72 6b 65 | 72 29 29 0a 09 20 20 20 |nt-marke|r)).. |
|00002ba0| 20 20 20 20 3b 3b 20 52 | 65 76 65 72 73 65 20 73 | ;; R|everse s|
|00002bb0| 65 61 72 63 68 73 20 61 | 72 65 20 66 75 6e 6b 79 |earchs a|re funky|
|00002bc0| 2e 20 20 54 68 65 20 61 | 62 6f 76 65 20 65 78 70 |. The a|bove exp|
|00002bd0| 72 65 73 73 69 6f 6e 20 | 73 69 6d 70 6c 79 0a 09 |ression |simply..|
|00002be0| 20 20 20 20 20 20 20 3b | 3b 20 77 69 6c 6c 20 6e | ;|; will n|
|00002bf0| 6f 74 20 6d 61 74 63 68 | 20 20 6d 6f 72 65 20 74 |ot match| more t|
|00002c00| 68 61 6e 20 6f 6e 65 20 | 6d 65 73 73 61 67 65 20 |han one |message |
|00002c10| 73 65 70 61 72 61 74 6f | 72 20 64 65 73 70 69 74 |separato|r despit|
|00002c20| 65 0a 09 20 20 20 20 20 | 20 20 3b 3b 20 74 68 65 |e.. | ;; the|
|00002c30| 20 22 31 20 6f 72 20 6d | 6f 72 65 22 20 64 69 72 | "1 or m|ore" dir|
|00002c40| 65 63 74 69 76 65 20 61 | 74 20 74 68 65 20 65 6e |ective a|t the en|
|00002c50| 64 2e 0a 09 20 20 20 20 | 20 20 20 3b 3b 20 54 68 |d... | ;; Th|
|00002c60| 69 73 20 77 69 6c 6c 20 | 68 61 76 65 20 74 6f 20 |is will |have to |
|00002c70| 73 75 66 66 69 63 65 2e | 0a 09 20 20 20 20 20 20 |suffice.|.. |
|00002c80| 20 28 77 68 69 6c 65 0a | 09 09 20 20 20 28 61 6e | (while.|.. (an|
|00002c90| 64 0a 09 09 20 20 20 20 | 28 73 61 76 65 2d 65 78 |d... |(save-ex|
|00002ca0| 63 75 72 73 69 6f 6e 0a | 09 09 20 20 20 20 20 20 |cursion.|.. |
|00002cb0| 28 72 65 2d 73 65 61 72 | 63 68 2d 62 61 63 6b 77 |(re-sear|ch-backw|
|00002cc0| 61 72 64 20 22 5c 5c 28 | 5e 2d 5b 5e 20 5d 2e 2a |ard "\\(|^-[^ ].*|
|00002cd0| 5c 6e 2b 5c 5c 7c 5e 2d | 5c 6e 2b 5c 5c 29 2b 22 |\n+\\|^-|\n+\\)+"|
|00002ce0| 20 73 74 61 72 74 20 74 | 29 0a 09 09 20 20 20 20 | start t|)... |
|00002cf0| 20 20 28 3d 20 65 6e 64 | 20 28 6d 61 74 63 68 2d | (= end| (match-|
|00002d00| 65 6e 64 20 30 29 29 29 | 29 0a 09 09 20 28 73 65 |end 0)))|)... (se|
|00002d10| 74 2d 6d 61 72 6b 65 72 | 20 65 6e 64 20 28 6d 61 |t-marker| end (ma|
|00002d20| 74 63 68 2d 62 65 67 69 | 6e 6e 69 6e 67 20 30 29 |tch-begi|nning 0)|
|00002d30| 29 0a 09 09 20 28 67 6f | 74 6f 2d 63 68 61 72 20 |)... (go|to-char |
|00002d40| 65 6e 64 29 29 0a 09 20 | 20 20 20 20 20 20 28 73 |end)).. | (s|
|00002d50| 6b 69 70 2d 63 68 61 72 | 73 2d 62 61 63 6b 77 61 |kip-char|s-backwa|
|00002d60| 72 64 20 22 5c 6e 22 29 | 0a 09 20 20 20 20 20 20 |rd "\n")|.. |
|00002d70| 20 28 73 65 74 2d 6d 61 | 72 6b 65 72 20 65 6e 64 | (set-ma|rker end|
|00002d80| 20 28 70 6f 69 6e 74 29 | 29 0a 09 20 20 20 20 20 | (point)|).. |
|00002d90| 20 20 28 64 65 6c 65 74 | 65 2d 72 65 67 69 6f 6e | (delet|e-region|
|00002da0| 20 65 6e 64 20 28 70 6f | 69 6e 74 2d 6d 61 78 29 | end (po|int-max)|
|00002db0| 29 29 0a 09 20 20 20 20 | 20 28 67 6f 74 6f 2d 63 |)).. | (goto-c|
|00002dc0| 68 61 72 20 73 74 61 72 | 74 29 0a 09 20 20 20 20 |har star|t).. |
|00002dd0| 20 28 69 66 20 28 6e 6f | 74 20 28 72 65 2d 73 65 | (if (no|t (re-se|
|00002de0| 61 72 63 68 2d 66 6f 72 | 77 61 72 64 20 22 5e 2d |arch-for|ward "^-|
|00002df0| 5b 5e 20 5d 22 20 65 6e | 64 20 74 29 29 0a 09 09 |[^ ]" en|d t))...|
|00002e00| 20 28 65 72 72 6f 72 20 | 22 66 69 72 73 74 20 6d | (error |"first m|
|00002e10| 65 73 73 61 67 65 20 73 | 65 70 61 72 61 74 6f 72 |essage s|eparator|
|00002e20| 20 6e 6f 74 20 66 6f 75 | 6e 64 22 29 0a 09 20 20 | not fou|nd").. |
|00002e30| 20 20 20 20 20 28 64 65 | 6c 65 74 65 2d 72 65 67 | (de|lete-reg|
|00002e40| 69 6f 6e 20 73 74 61 72 | 74 20 28 6d 61 74 63 68 |ion star|t (match|
|00002e50| 2d 62 65 67 69 6e 6e 69 | 6e 67 20 30 29 29 29 0a |-beginni|ng 0))).|
|00002e60| 09 20 20 20 20 20 3b 3b | 20 4e 6f 77 20 74 68 61 |. ;;| Now tha|
|00002e70| 74 20 77 65 20 6b 6e 6f | 77 20 74 68 61 74 20 74 |t we kno|w that t|
|00002e80| 68 65 20 64 69 67 65 73 | 74 20 68 61 73 20 74 68 |he diges|t has th|
|00002e90| 65 20 62 61 73 69 63 73 | 20 63 6f 76 65 72 65 64 |e basics| covered|
|00002ea0| 0a 09 20 20 20 20 20 3b | 3b 20 74 72 79 20 74 6f |.. ;|; try to|
|00002eb0| 20 64 65 74 65 63 74 20 | 61 6e 64 20 66 69 78 20 | detect |and fix |
|00002ec0| 61 6e 79 20 62 6f 67 75 | 73 20 6d 65 73 73 61 67 |any bogu|s messag|
|00002ed0| 65 20 73 65 70 61 72 61 | 74 6f 72 73 2c 0a 09 20 |e separa|tors,.. |
|00002ee0| 20 20 20 20 3b 3b 20 69 | 66 20 74 68 65 20 75 73 | ;; i|f the us|
|00002ef0| 65 72 20 72 65 71 75 65 | 73 74 65 64 20 69 74 2e |er reque|sted it.|
|00002f00| 0a 09 20 20 20 20 20 28 | 61 6e 64 20 67 72 6f 74 |.. (|and grot|
|00002f10| 74 79 2d 64 69 67 65 73 | 74 20 28 76 6d 2d 66 69 |ty-diges|t (vm-fi|
|00002f20| 78 2d 67 72 6f 74 74 79 | 2d 64 69 67 65 73 74 20 |x-grotty|-digest |
|00002f30| 73 74 61 72 74 20 28 70 | 6f 69 6e 74 2d 6d 61 78 |start (p|oint-max|
|00002f40| 29 29 29 0a 09 20 20 20 | 20 20 3b 3b 20 43 6f 6e |))).. | ;; Con|
|00002f50| 63 6f 63 74 20 73 75 69 | 74 61 62 6c 65 20 73 65 |coct sui|table se|
|00002f60| 70 61 72 61 74 6f 72 20 | 73 74 72 69 6e 67 73 20 |parator |strings |
|00002f70| 66 6f 72 20 74 68 65 20 | 66 75 74 75 72 65 20 6d |for the |future m|
|00002f80| 65 73 73 61 67 65 73 2e | 0a 09 20 20 20 20 20 28 |essages.|.. (|
|00002f90| 69 66 20 28 65 71 20 76 | 6d 2d 66 6f 6c 64 65 72 |if (eq v|m-folder|
|00002fa0| 2d 74 79 70 65 20 27 6d | 6d 64 66 29 0a 09 09 20 |-type 'm|mdf)... |
|00002fb0| 28 73 65 74 71 20 6c 65 | 61 64 65 72 20 22 5c 30 |(setq le|ader "\0|
|00002fc0| 30 31 5c 30 30 31 5c 30 | 30 31 5c 30 30 31 5c 6e |01\001\0|01\001\n|
|00002fd0| 22 0a 09 09 20 20 20 20 | 20 20 20 74 72 61 69 6c |"... | trail|
|00002fe0| 65 72 20 22 5c 6e 5c 30 | 30 31 5c 30 30 31 5c 30 |er "\n\0|01\001\0|
|00002ff0| 30 31 5c 30 30 31 5c 6e | 22 29 0a 09 20 20 20 20 |01\001\n|").. |
|00003000| 20 20 20 28 73 65 74 71 | 20 6c 65 61 64 65 72 20 | (setq| leader |
|00003010| 28 63 6f 6e 63 61 74 20 | 22 46 72 6f 6d 20 22 20 |(concat |"From " |
|00003020| 28 76 6d 2d 66 72 6f 6d | 2d 6f 66 20 6d 29 20 22 |(vm-from|-of m) "|
|00003030| 20 22 0a 09 09 09 09 20 | 20 20 20 28 63 75 72 72 | "..... | (curr|
|00003040| 65 6e 74 2d 74 69 6d 65 | 2d 73 74 72 69 6e 67 29 |ent-time|-string)|
|00003050| 20 22 5c 6e 22 29 0a 09 | 09 20 20 20 20 20 74 72 | "\n")..|. tr|
|00003060| 61 69 6c 65 72 20 22 5c | 6e 5c 6e 22 29 29 0a 09 |ailer "\|n\n"))..|
|00003070| 20 20 20 20 20 28 67 6f | 74 6f 2d 63 68 61 72 20 | (go|to-char |
|00003080| 73 74 61 72 74 29 0a 09 | 20 20 20 20 20 28 77 68 |start)..| (wh|
|00003090| 69 6c 65 20 28 72 65 2d | 73 65 61 72 63 68 2d 66 |ile (re-|search-f|
|000030a0| 6f 72 77 61 72 64 0a 09 | 09 20 20 20 20 20 22 5c |orward..|. "\|
|000030b0| 5c 28 5c 5c 28 5c 6e 2b | 5c 5c 29 5c 5c 7c 5c 5c |\(\\(\n+|\\)\\|\\|
|000030c0| 28 5e 5c 5c 29 5c 5c 29 | 5c 5c 28 2d 5b 5e 20 5d |(^\\)\\)|\\(-[^ ]|
|000030d0| 2e 2a 5c 6e 2b 5c 5c 7c | 2d 5c 6e 2b 5c 5c 29 2b |.*\n+\\||-\n+\\)+|
|000030e0| 22 0a 09 09 20 20 20 20 | 20 65 6e 64 20 30 29 0a |"... | end 0).|
|000030f0| 09 20 20 20 20 20 20 20 | 3b 3b 20 64 65 6c 65 74 |. |;; delet|
|00003100| 65 20 6d 65 73 73 61 67 | 65 20 73 65 70 61 72 61 |e messag|e separa|
|00003110| 74 6f 72 0a 09 20 20 20 | 20 20 20 20 28 72 65 70 |tor.. | (rep|
|00003120| 6c 61 63 65 2d 6d 61 74 | 63 68 20 22 22 20 74 20 |lace-mat|ch "" t |
|00003130| 74 29 0a 09 20 20 20 20 | 20 20 20 3b 3b 20 73 74 |t).. | ;; st|
|00003140| 75 66 66 20 73 65 70 61 | 72 61 74 6f 72 0a 09 20 |uff sepa|rator.. |
|00003150| 20 20 20 20 20 20 28 69 | 66 20 28 6d 61 74 63 68 | (i|f (match|
|00003160| 2d 62 65 67 69 6e 6e 69 | 6e 67 20 32 29 0a 09 09 |-beginni|ng 2)...|
|00003170| 20 20 20 28 69 6e 73 65 | 72 74 20 74 72 61 69 6c | (inse|rt trail|
|00003180| 65 72 29 29 0a 09 20 20 | 20 20 20 20 20 28 69 6e |er)).. | (in|
|00003190| 73 65 72 74 20 6c 65 61 | 64 65 72 29 0a 09 20 20 |sert lea|der).. |
|000031a0| 20 20 20 20 20 3b 3b 20 | 44 65 6c 65 74 65 20 61 | ;; |Delete a|
|000031b0| 74 74 72 69 62 75 74 65 | 20 68 65 61 64 65 72 73 |ttribute| headers|
|000031c0| 20 73 6f 20 6d 65 73 73 | 61 67 65 20 77 69 6c 6c | so mess|age will|
|000031d0| 20 61 70 70 65 61 72 0a | 09 20 20 20 20 20 20 20 | appear.|. |
|000031e0| 3b 3b 20 62 72 61 6e 64 | 20 6e 65 77 20 74 6f 20 |;; brand| new to |
|000031f0| 74 68 65 20 75 73 65 72 | 0a 09 20 20 20 20 20 20 |the user|.. |
|00003200| 20 28 73 65 74 71 20 72 | 65 67 2d 73 74 61 72 74 | (setq r|eg-start|
|00003210| 20 28 70 6f 69 6e 74 29 | 29 0a 09 20 20 20 20 20 | (point)|).. |
|00003220| 20 20 28 73 61 76 65 2d | 65 78 63 75 72 73 69 6f | (save-|excursio|
|00003230| 6e 0a 09 09 20 28 73 65 | 61 72 63 68 2d 66 6f 72 |n... (se|arch-for|
|00003240| 77 61 72 64 20 22 5c 6e | 5c 6e 22 20 6e 69 6c 20 |ward "\n|\n" nil |
|00003250| 30 29 0a 09 09 20 28 73 | 65 74 2d 6d 61 72 6b 65 |0)... (s|et-marke|
|00003260| 72 20 74 65 78 74 2d 73 | 74 61 72 74 20 28 70 6f |r text-s|tart (po|
|00003270| 69 6e 74 29 29 29 0a 09 | 20 20 20 20 20 20 20 28 |int)))..| (|
|00003280| 77 68 69 6c 65 20 28 72 | 65 2d 73 65 61 72 63 68 |while (r|e-search|
|00003290| 2d 66 6f 72 77 61 72 64 | 20 76 6d 2d 61 74 74 72 |-forward| vm-attr|
|000032a0| 69 62 75 74 65 73 2d 68 | 65 61 64 65 72 2d 72 65 |ibutes-h|eader-re|
|000032b0| 67 65 78 70 0a 09 09 09 | 09 09 20 74 65 78 74 2d |gexp....|.. text-|
|000032c0| 73 74 61 72 74 20 74 29 | 0a 09 09 20 28 64 65 6c |start t)|... (del|
|000032d0| 65 74 65 2d 72 65 67 69 | 6f 6e 20 28 6d 61 74 63 |ete-regi|on (matc|
|000032e0| 68 2d 62 65 67 69 6e 6e | 69 6e 67 20 30 29 20 28 |h-beginn|ing 0) (|
|000032f0| 6d 61 74 63 68 2d 65 6e | 64 20 30 29 29 29 0a 09 |match-en|d 0)))..|
|00003300| 20 20 20 20 20 20 20 28 | 69 66 20 76 6d 2d 62 65 | (|if vm-be|
|00003310| 72 6b 65 6c 65 79 2d 6d | 61 69 6c 2d 63 6f 6d 70 |rkeley-m|ail-comp|
|00003320| 61 74 69 62 69 6c 69 74 | 79 0a 09 09 20 20 20 28 |atibilit|y... (|
|00003330| 70 72 6f 67 6e 0a 09 09 | 20 20 20 20 20 28 67 6f |progn...| (go|
|00003340| 74 6f 2d 63 68 61 72 20 | 72 65 67 2d 73 74 61 72 |to-char |reg-star|
|00003350| 74 29 0a 09 09 20 20 20 | 20 20 28 77 68 69 6c 65 |t)... | (while|
|00003360| 20 28 72 65 2d 73 65 61 | 72 63 68 2d 66 6f 72 77 | (re-sea|rch-forw|
|00003370| 61 72 64 20 76 6d 2d 62 | 65 72 6b 65 6c 65 79 2d |ard vm-b|erkeley-|
|00003380| 6d 61 69 6c 2d 73 74 61 | 74 75 73 2d 68 65 61 64 |mail-sta|tus-head|
|00003390| 65 72 2d 72 65 67 65 78 | 70 0a 09 09 09 09 09 20 |er-regex|p...... |
|000033a0| 20 20 20 74 65 78 74 2d | 73 74 61 72 74 20 74 29 | text-|start t)|
|000033b0| 0a 09 09 09 20 28 64 65 | 6c 65 74 65 2d 72 65 67 |.... (de|lete-reg|
|000033c0| 69 6f 6e 20 28 6d 61 74 | 63 68 2d 62 65 67 69 6e |ion (mat|ch-begin|
|000033d0| 6e 69 6e 67 20 30 29 20 | 28 6d 61 74 63 68 2d 65 |ning 0) |(match-e|
|000033e0| 6e 64 20 30 29 29 29 29 | 29 0a 09 20 20 20 20 20 |nd 0))))|).. |
|000033f0| 20 20 3b 3b 20 66 69 6e | 64 20 65 6e 64 20 6f 66 | ;; fin|d end of|
|00003400| 20 6d 65 73 73 61 67 65 | 20 73 65 70 61 72 61 74 | message| separat|
|00003410| 6f 72 20 61 6e 64 20 75 | 6e 73 74 75 66 66 20 74 |or and u|nstuff t|
|00003420| 68 65 20 6d 65 73 73 61 | 67 65 0a 09 20 20 20 20 |he messa|ge.. |
|00003430| 20 20 20 28 67 6f 74 6f | 2d 63 68 61 72 20 72 65 | (goto|-char re|
|00003440| 67 2d 73 74 61 72 74 29 | 0a 09 20 20 20 20 20 20 |g-start)|.. |
|00003450| 20 28 73 65 74 2d 6d 61 | 72 6b 65 72 20 72 65 67 | (set-ma|rker reg|
|00003460| 2d 65 6e 64 20 28 69 66 | 20 28 72 65 2d 73 65 61 |-end (if| (re-sea|
|00003470| 72 63 68 2d 66 6f 72 77 | 61 72 64 20 22 5c 6e 2b |rch-forw|ard "\n+|
|00003480| 2d 5b 5e 20 5d 22 20 65 | 6e 64 20 30 29 0a 09 09 |-[^ ]" e|nd 0)...|
|00003490| 09 09 20 20 20 20 20 20 | 20 28 6d 61 74 63 68 2d |.. | (match-|
|000034a0| 62 65 67 69 6e 6e 69 6e | 67 20 30 29 0a 09 09 09 |beginnin|g 0)....|
|000034b0| 09 20 20 20 20 20 28 70 | 6f 69 6e 74 29 29 29 0a |. (p|oint))).|
|000034c0| 09 20 20 20 20 20 20 20 | 28 76 6d 2d 72 66 63 39 |. |(vm-rfc9|
|000034d0| 33 34 2d 63 68 61 72 2d | 75 6e 73 74 75 66 66 2d |34-char-|unstuff-|
|000034e0| 72 65 67 69 6f 6e 20 72 | 65 67 2d 73 74 61 72 74 |region r|eg-start|
|000034f0| 20 72 65 67 2d 65 6e 64 | 29 0a 09 20 20 20 20 20 | reg-end|).. |
|00003500| 20 20 28 67 6f 74 6f 2d | 63 68 61 72 20 72 65 67 | (goto-|char reg|
|00003510| 2d 65 6e 64 29 29 0a 09 | 20 20 20 20 20 28 67 6f |-end))..| (go|
|00003520| 74 6f 2d 63 68 61 72 20 | 65 6e 64 29 0a 09 20 20 |to-char |end).. |
|00003530| 20 20 20 28 69 6e 73 65 | 72 74 20 74 72 61 69 6c | (inse|rt trail|
|00003540| 65 72 29 0a 09 20 20 20 | 20 20 28 73 65 74 2d 6d |er).. | (set-m|
|00003550| 61 72 6b 65 72 20 65 6e | 64 20 6e 69 6c 29 0a 09 |arker en|d nil)..|
|00003560| 20 20 20 20 20 28 73 65 | 74 2d 6d 61 72 6b 65 72 | (se|t-marker|
|00003570| 20 72 65 67 2d 65 6e 64 | 20 6e 69 6c 29 0a 09 20 | reg-end| nil).. |
|00003580| 20 20 20 20 28 76 6d 2d | 63 6c 65 61 72 2d 6d 6f | (vm-|clear-mo|
|00003590| 64 69 66 69 63 61 74 69 | 6f 6e 2d 66 6c 61 67 2d |dificati|on-flag-|
|000035a0| 75 6e 64 6f 73 29 0a 09 | 20 20 20 20 20 28 76 6d |undos)..| (vm|
|000035b0| 2d 73 65 74 2d 62 75 66 | 66 65 72 2d 6d 6f 64 69 |-set-buf|fer-modi|
|000035c0| 66 69 65 64 2d 70 20 28 | 62 75 66 66 65 72 2d 6d |fied-p (|buffer-m|
|000035d0| 6f 64 69 66 69 65 64 2d | 70 29 29 0a 09 20 20 20 |odified-|p)).. |
|000035e0| 20 20 28 61 6e 64 20 76 | 6d 2d 64 65 6c 65 74 65 | (and v|m-delete|
|000035f0| 2d 61 66 74 65 72 2d 62 | 75 72 73 74 69 6e 67 20 |-after-b|ursting |
|00003600| 28 76 6d 2d 64 65 6c 65 | 74 65 2d 6d 65 73 73 61 |(vm-dele|te-messa|
|00003610| 67 65 20 31 29 29 29 0a | 09 20 28 65 72 72 6f 72 |ge 1))).|. (error|
|00003620| 20 28 61 6e 64 20 73 74 | 61 72 74 20 28 64 65 6c | (and st|art (del|
|00003630| 65 74 65 2d 72 65 67 69 | 6f 6e 20 73 74 61 72 74 |ete-regi|on start|
|00003640| 20 28 70 6f 69 6e 74 2d | 6d 61 78 29 29 29 0a 09 | (point-|max)))..|
|00003650| 09 28 73 65 74 2d 62 75 | 66 66 65 72 2d 6d 6f 64 |.(set-bu|ffer-mod|
|00003660| 69 66 69 65 64 2d 70 20 | 6f 6c 64 2d 62 75 66 66 |ified-p |old-buff|
|00003670| 65 72 2d 6d 6f 64 69 66 | 69 65 64 2d 70 29 0a 09 |er-modif|ied-p)..|
|00003680| 09 28 69 66 20 28 6d 65 | 6d 71 20 28 63 61 72 20 |.(if (me|mq (car |
|00003690| 65 72 72 6f 72 2d 64 61 | 74 61 29 0a 09 09 09 20 |error-da|ta).... |
|000036a0| 20 27 28 66 69 6c 65 2d | 73 75 70 65 72 73 65 73 | '(file-|superses|
|000036b0| 73 69 6f 6e 20 62 75 66 | 66 65 72 2d 66 69 6c 65 |sion buf|fer-file|
|000036c0| 2d 6c 6f 63 6b 65 64 29 | 29 0a 09 09 20 20 20 20 |-locked)|)... |
|000036d0| 28 73 69 67 6e 61 6c 20 | 28 63 61 72 20 65 72 72 |(signal |(car err|
|000036e0| 6f 72 2d 64 61 74 61 29 | 20 28 63 64 72 20 65 72 |or-data)| (cdr er|
|000036f0| 72 6f 72 2d 64 61 74 61 | 29 29 29 0a 09 09 28 65 |ror-data|)))...(e|
|00003700| 72 72 6f 72 20 22 4d 61 | 6c 66 6f 72 6d 65 64 20 |rror "Ma|lformed |
|00003710| 64 69 67 65 73 74 22 29 | 29 29 29 29 0a 20 20 20 |digest")|)))). |
|00003720| 20 28 69 66 20 28 76 6d | 2d 61 73 73 69 6d 69 6c | (if (vm|-assimil|
|00003730| 61 74 65 2d 6e 65 77 2d | 6d 65 73 73 61 67 65 73 |ate-new-|messages|
|00003740| 29 0a 09 28 70 72 6f 67 | 6e 0a 09 20 20 28 76 6d |)..(prog|n.. (vm|
|00003750| 2d 65 6d 69 74 2d 74 6f | 74 61 6c 73 2d 62 6c 75 |-emit-to|tals-blu|
|00003760| 72 62 29 0a 09 20 20 28 | 6f 72 20 28 76 6d 2d 74 |rb).. (|or (vm-t|
|00003770| 68 6f 75 67 68 74 66 75 | 6c 6c 79 2d 73 65 6c 65 |houghtfu|lly-sele|
|00003780| 63 74 2d 6d 65 73 73 61 | 67 65 29 0a 09 20 20 20 |ct-messa|ge).. |
|00003790| 20 20 20 28 76 6d 2d 75 | 70 64 61 74 65 2d 73 75 | (vm-u|pdate-su|
|000037a0| 6d 6d 61 72 79 2d 61 6e | 64 2d 6d 6f 64 65 2d 6c |mmary-an|d-mode-l|
|000037b0| 69 6e 65 29 29 29 29 29 | 29 0a 0a 3b 3b 20 54 68 |ine)))))|)..;; Th|
|000037c0| 69 73 20 69 73 20 61 20 | 6b 6c 75 64 67 65 2e 0a |is is a |kludge..|
|000037d0| 3b 3b 20 57 65 20 74 72 | 79 20 74 6f 20 61 63 63 |;; We tr|y to acc|
|000037e0| 6f 6d 6f 64 61 74 65 20 | 73 6f 6d 65 20 6f 66 20 |omodate |some of |
|000037f0| 74 68 65 20 70 72 65 76 | 61 6c 65 6e 74 20 73 74 |the prev|alent st|
|00003800| 79 6c 65 73 20 6f 66 20 | 64 69 67 65 73 74 0a 3b |yles of |digest.;|
|00003810| 3b 20 6f 75 74 20 74 68 | 65 72 65 2c 20 62 79 20 |; out th|ere, by |
|00003820| 63 6f 6e 76 65 72 74 69 | 6e 67 20 74 68 65 6d 20 |converti|ng them |
|00003830| 69 6e 74 6f 20 72 66 63 | 20 39 33 34 20 63 6f 6e |into rfc| 934 con|
|00003840| 66 6f 72 6d 61 6e 74 20 | 64 69 67 65 73 74 73 2e |formant |digests.|
|00003850| 0a 3b 3b 20 49 6e 20 74 | 68 69 73 20 77 65 20 63 |.;; In t|his we c|
|00003860| 61 6e 20 6f 6e 6c 79 20 | 62 65 20 70 61 72 74 69 |an only |be parti|
|00003870| 61 6c 6c 79 20 73 75 63 | 63 65 73 73 66 75 6c 2e |ally suc|cessful.|
|00003880| 20 20 53 75 63 68 20 69 | 73 20 6c 69 66 65 2e 0a | Such i|s life..|
|00003890| 28 64 65 66 75 6e 20 76 | 6d 2d 66 69 78 2d 67 72 |(defun v|m-fix-gr|
|000038a0| 6f 74 74 79 2d 64 69 67 | 65 73 74 20 28 73 74 61 |otty-dig|est (sta|
|000038b0| 72 74 20 65 6e 64 29 0a | 20 20 28 73 61 76 65 2d |rt end).| (save-|
|000038c0| 65 78 63 75 72 73 69 6f | 6e 0a 20 20 20 20 28 73 |excursio|n. (s|
|000038d0| 61 76 65 2d 72 65 73 74 | 72 69 63 74 69 6f 6e 0a |ave-rest|riction.|
|000038e0| 20 20 20 20 20 20 28 6e | 61 72 72 6f 77 2d 74 6f | (n|arrow-to|
|000038f0| 2d 72 65 67 69 6f 6e 20 | 73 74 61 72 74 20 65 6e |-region |start en|
|00003900| 64 29 0a 20 20 20 20 20 | 20 28 67 6f 74 6f 2d 63 |d). | (goto-c|
|00003910| 68 61 72 20 73 74 61 72 | 74 29 0a 20 20 20 20 20 |har star|t). |
|00003920| 20 28 66 6f 72 77 61 72 | 64 2d 6c 69 6e 65 20 31 | (forwar|d-line 1|
|00003930| 29 0a 20 20 20 20 20 20 | 28 77 68 69 6c 65 20 28 |). |(while (|
|00003940| 72 65 2d 73 65 61 72 63 | 68 2d 66 6f 72 77 61 72 |re-searc|h-forwar|
|00003950| 64 20 22 5e 2d 5b 5e 20 | 5d 22 20 6e 69 6c 20 74 |d "^-[^ |]" nil t|
|00003960| 29 0a 09 28 67 6f 74 6f | 2d 63 68 61 72 20 28 6d |)..(goto|-char (m|
|00003970| 61 74 63 68 2d 62 65 67 | 69 6e 6e 69 6e 67 20 30 |atch-beg|inning 0|
|00003980| 29 29 0a 09 28 69 66 20 | 28 6e 6f 74 20 28 63 61 |))..(if |(not (ca|
|00003990| 74 63 68 20 27 72 65 61 | 6c 2d 73 65 70 61 72 61 |tch 'rea|l-separa|
|000039a0| 74 6f 72 0a 09 09 20 20 | 20 3b 3b 20 65 78 70 65 |tor... | ;; expe|
|000039b0| 63 74 20 72 65 61 73 6f | 6e 61 62 6c 79 20 6c 6f |ct reaso|nably lo|
|000039c0| 6e 67 20 6d 65 73 73 61 | 67 65 20 73 65 70 61 72 |ng messa|ge separ|
|000039d0| 61 74 6f 72 73 0a 09 09 | 20 20 20 28 69 66 20 28 |ators...| (if (|
|000039e0| 6e 6f 74 20 28 6c 6f 6f | 6b 69 6e 67 2d 61 74 20 |not (loo|king-at |
|000039f0| 22 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 22 29 29 |"-------|-----"))|
|00003a00| 0a 09 09 20 20 20 20 20 | 20 20 28 74 68 72 6f 77 |... | (throw|
|00003a10| 20 27 72 65 61 6c 2d 73 | 65 70 61 72 61 74 6f 72 | 'real-s|eparator|
|00003a20| 20 6e 69 6c 29 29 0a 09 | 09 20 20 20 3b 3b 20 65 | nil))..|. ;; e|
|00003a30| 78 70 65 63 74 20 6d 65 | 73 73 61 67 65 20 73 65 |xpect me|ssage se|
|00003a40| 70 61 72 61 74 6f 72 73 | 20 74 6f 20 62 65 20 62 |parators| to be b|
|00003a50| 72 61 63 6b 65 74 65 64 | 20 62 79 20 62 6c 61 6e |racketed| by blan|
|00003a60| 6b 20 6c 69 6e 65 73 0a | 09 09 20 20 20 28 69 66 |k lines.|.. (if|
|00003a70| 20 28 2f 3d 20 28 63 68 | 61 72 2d 61 66 74 65 72 | (/= (ch|ar-after|
|00003a80| 20 28 2d 20 28 70 6f 69 | 6e 74 29 20 32 29 29 20 | (- (poi|nt) 2)) |
|00003a90| 3f 5c 6e 29 0a 09 09 20 | 20 20 20 20 20 20 28 74 |?\n)... | (t|
|00003aa0| 68 72 6f 77 20 27 72 65 | 61 6c 2d 73 65 70 61 72 |hrow 're|al-separ|
|00003ab0| 61 74 6f 72 20 6e 69 6c | 29 29 0a 09 09 20 20 20 |ator nil|))... |
|00003ac0| 28 69 66 20 28 6e 6f 74 | 20 28 6c 6f 6f 6b 69 6e |(if (not| (lookin|
|00003ad0| 67 2d 61 74 20 22 2e 2b | 5c 6e 5c 6e 22 29 29 0a |g-at ".+|\n\n")).|
|00003ae0| 09 09 20 20 20 20 20 20 | 20 28 74 68 72 6f 77 20 |.. | (throw |
|00003af0| 27 72 65 61 6c 2d 73 65 | 70 61 72 61 74 6f 72 20 |'real-se|parator |
|00003b00| 6e 69 6c 29 29 0a 09 09 | 20 20 20 74 20 29 29 0a |nil))...| t )).|
|00003b10| 09 20 20 20 20 28 69 6e | 73 65 72 74 20 22 2d 20 |. (in|sert "- |
|00003b20| 22 29 29 0a 09 28 66 6f | 72 77 61 72 64 2d 6c 69 |"))..(fo|rward-li|
|00003b30| 6e 65 20 31 29 29 29 29 | 29 0a 00 00 00 00 00 00 |ne 1))))|).......|
|00003b40| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003b50| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003b60| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003b70| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003b80| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003b90| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003ba0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003bb0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003bc0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003bd0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003be0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003bf0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003c00| 76 6d 2d 65 64 69 74 2e | 65 6c 00 00 00 00 00 00 |vm-edit.|el......|
|00003c10| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003c20| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003c30| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003c40| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003c50| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003c60| 00 00 00 00 20 20 20 36 | 34 34 20 00 20 20 20 20 |.... 6|44 . |
|00003c70| 31 32 20 00 20 20 20 20 | 32 34 20 00 20 20 20 20 |12 . |24 . |
|00003c80| 20 20 31 37 36 33 36 20 | 20 34 37 37 37 34 37 33 | 17636 | 4777473|
|00003c90| 33 30 31 20 20 31 31 31 | 36 36 00 20 30 00 00 00 |301 111|66. 0...|
|00003ca0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003cb0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003cc0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003cd0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003ce0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003cf0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003d00| 00 75 73 74 61 72 20 20 | 00 6b 79 6c 65 00 00 00 |.ustar |.kyle...|
|00003d10| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003d20| 00 00 00 00 00 00 00 00 | 00 73 74 61 66 66 00 00 |........|.staff..|
|00003d30| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003d40| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003d50| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003d60| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003d70| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003d80| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003d90| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003da0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003db0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003dc0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003dd0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003de0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003df0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003e00| 3b 3b 3b 20 45 64 69 74 | 69 6e 67 20 56 4d 20 6d |;;; Edit|ing VM m|
|00003e10| 65 73 73 61 67 65 73 0a | 3b 3b 3b 20 43 6f 70 79 |essages.|;;; Copy|
|00003e20| 72 69 67 68 74 20 28 43 | 29 20 31 39 39 30 2c 20 |right (C|) 1990, |
|00003e30| 31 39 39 31 20 4b 79 6c | 65 20 45 2e 20 4a 6f 6e |1991 Kyl|e E. Jon|
|00003e40| 65 73 0a 3b 3b 3b 0a 3b | 3b 3b 20 54 68 69 73 20 |es.;;;.;|;; This |
|00003e50| 70 72 6f 67 72 61 6d 20 | 69 73 20 66 72 65 65 20 |program |is free |
|00003e60| 73 6f 66 74 77 61 72 65 | 3b 20 79 6f 75 20 63 61 |software|; you ca|
|00003e70| 6e 20 72 65 64 69 73 74 | 72 69 62 75 74 65 20 69 |n redist|ribute i|
|00003e80| 74 20 61 6e 64 2f 6f 72 | 20 6d 6f 64 69 66 79 0a |t and/or| modify.|
|00003e90| 3b 3b 3b 20 69 74 20 75 | 6e 64 65 72 20 74 68 65 |;;; it u|nder the|
|00003ea0| 20 74 65 72 6d 73 20 6f | 66 20 74 68 65 20 47 4e | terms o|f the GN|
|00003eb0| 55 20 47 65 6e 65 72 61 | 6c 20 50 75 62 6c 69 63 |U Genera|l Public|
|00003ec0| 20 4c 69 63 65 6e 73 65 | 20 61 73 20 70 75 62 6c | License| as publ|
|00003ed0| 69 73 68 65 64 20 62 79 | 0a 3b 3b 3b 20 74 68 65 |ished by|.;;; the|
|00003ee0| 20 46 72 65 65 20 53 6f | 66 74 77 61 72 65 20 46 | Free So|ftware F|
|00003ef0| 6f 75 6e 64 61 74 69 6f | 6e 3b 20 65 69 74 68 65 |oundatio|n; eithe|
|00003f00| 72 20 76 65 72 73 69 6f | 6e 20 31 2c 20 6f 72 20 |r versio|n 1, or |
|00003f10| 28 61 74 20 79 6f 75 72 | 20 6f 70 74 69 6f 6e 29 |(at your| option)|
|00003f20| 0a 3b 3b 3b 20 61 6e 79 | 20 6c 61 74 65 72 20 76 |.;;; any| later v|
|00003f30| 65 72 73 69 6f 6e 2e 0a | 3b 3b 3b 0a 3b 3b 3b 20 |ersion..|;;;.;;; |
|00003f40| 54 68 69 73 20 70 72 6f | 67 72 61 6d 20 69 73 20 |This pro|gram is |
|00003f50| 64 69 73 74 72 69 62 75 | 74 65 64 20 69 6e 20 74 |distribu|ted in t|
|00003f60| 68 65 20 68 6f 70 65 20 | 74 68 61 74 20 69 74 20 |he hope |that it |
|00003f70| 77 69 6c 6c 20 62 65 20 | 75 73 65 66 75 6c 2c 0a |will be |useful,.|
|00003f80| 3b 3b 3b 20 62 75 74 20 | 57 49 54 48 4f 55 54 20 |;;; but |WITHOUT |
|00003f90| 41 4e 59 20 57 41 52 52 | 41 4e 54 59 3b 20 77 69 |ANY WARR|ANTY; wi|
|00003fa0| 74 68 6f 75 74 20 65 76 | 65 6e 20 74 68 65 20 69 |thout ev|en the i|
|00003fb0| 6d 70 6c 69 65 64 20 77 | 61 72 72 61 6e 74 79 20 |mplied w|arranty |
|00003fc0| 6f 66 0a 3b 3b 3b 20 4d | 45 52 43 48 41 4e 54 41 |of.;;; M|ERCHANTA|
|00003fd0| 42 49 4c 49 54 59 20 6f | 72 20 46 49 54 4e 45 53 |BILITY o|r FITNES|
|00003fe0| 53 20 46 4f 52 20 41 20 | 50 41 52 54 49 43 55 4c |S FOR A |PARTICUL|
|00003ff0| 41 52 20 50 55 52 50 4f | 53 45 2e 20 20 53 65 65 |AR PURPO|SE. See|
|00004000| 20 74 68 65 0a 3b 3b 3b | 20 47 4e 55 20 47 65 6e | the.;;;| GNU Gen|
|00004010| 65 72 61 6c 20 50 75 62 | 6c 69 63 20 4c 69 63 65 |eral Pub|lic Lice|
|00004020| 6e 73 65 20 66 6f 72 20 | 6d 6f 72 65 20 64 65 74 |nse for |more det|
|00004030| 61 69 6c 73 2e 0a 3b 3b | 3b 0a 3b 3b 3b 20 59 6f |ails..;;|;.;;; Yo|
|00004040| 75 20 73 68 6f 75 6c 64 | 20 68 61 76 65 20 72 65 |u should| have re|
|00004050| 63 65 69 76 65 64 20 61 | 20 63 6f 70 79 20 6f 66 |ceived a| copy of|
|00004060| 20 74 68 65 20 47 4e 55 | 20 47 65 6e 65 72 61 6c | the GNU| General|
|00004070| 20 50 75 62 6c 69 63 20 | 4c 69 63 65 6e 73 65 0a | Public |License.|
|00004080| 3b 3b 3b 20 61 6c 6f 6e | 67 20 77 69 74 68 20 74 |;;; alon|g with t|
|00004090| 68 69 73 20 70 72 6f 67 | 72 61 6d 3b 20 69 66 20 |his prog|ram; if |
|000040a0| 6e 6f 74 2c 20 77 72 69 | 74 65 20 74 6f 20 74 68 |not, wri|te to th|
|000040b0| 65 20 46 72 65 65 20 53 | 6f 66 74 77 61 72 65 0a |e Free S|oftware.|
|000040c0| 3b 3b 3b 20 46 6f 75 6e | 64 61 74 69 6f 6e 2c 20 |;;; Foun|dation, |
|000040d0| 49 6e 63 2e 2c 20 36 37 | 35 20 4d 61 73 73 20 41 |Inc., 67|5 Mass A|
|000040e0| 76 65 2c 20 43 61 6d 62 | 72 69 64 67 65 2c 20 4d |ve, Camb|ridge, M|
|000040f0| 41 20 30 32 31 33 39 2c | 20 55 53 41 2e 0a 0a 28 |A 02139,| USA...(|
|00004100| 64 65 66 75 6e 20 76 6d | 2d 65 64 69 74 2d 6d 65 |defun vm|-edit-me|
|00004110| 73 73 61 67 65 20 28 26 | 6f 70 74 69 6f 6e 61 6c |ssage (&|optional|
|00004120| 20 70 72 65 66 69 78 2d | 61 72 67 75 6d 65 6e 74 | prefix-|argument|
|00004130| 29 0a 20 20 22 45 64 69 | 74 20 74 68 65 20 63 75 |). "Edi|t the cu|
|00004140| 72 72 65 6e 74 20 6d 65 | 73 73 61 67 65 2e 20 20 |rrent me|ssage. |
|00004150| 50 72 65 66 69 78 20 61 | 72 67 20 6d 65 61 6e 73 |Prefix a|rg means|
|00004160| 20 6d 61 72 6b 20 61 73 | 20 75 6e 65 64 69 74 65 | mark as| unedite|
|00004170| 64 20 69 6e 73 74 65 61 | 64 2e 0a 49 66 20 65 64 |d instea|d..If ed|
|00004180| 69 74 69 6e 67 2c 20 74 | 68 65 20 63 75 72 72 65 |iting, t|he curre|
|00004190| 6e 74 20 6d 65 73 73 61 | 67 65 20 69 73 20 63 6f |nt messa|ge is co|
|000041a0| 70 69 65 64 20 69 6e 74 | 6f 20 61 20 74 65 6d 70 |pied int|o a temp|
|000041b0| 6f 72 61 72 79 20 62 75 | 66 66 65 72 2c 20 61 6e |orary bu|ffer, an|
|000041c0| 64 0a 74 68 69 73 20 62 | 75 66 66 65 72 20 69 73 |d.this b|uffer is|
|000041d0| 20 73 65 6c 65 63 74 65 | 64 20 66 6f 72 20 65 64 | selecte|d for ed|
|000041e0| 69 74 69 6e 67 2e 20 20 | 54 68 65 20 6d 61 6a 6f |iting. |The majo|
|000041f0| 72 20 6d 6f 64 65 20 6f | 66 20 74 68 69 73 20 62 |r mode o|f this b|
|00004200| 75 66 66 65 72 20 69 73 | 0a 63 6f 6e 74 72 6f 6c |uffer is|.control|
|00004210| 6c 65 64 20 62 79 20 74 | 68 65 20 76 61 72 69 61 |led by t|he varia|
|00004220| 62 6c 65 20 60 76 6d 2d | 65 64 69 74 2d 6d 65 73 |ble `vm-|edit-mes|
|00004230| 73 61 67 65 2d 6d 6f 64 | 65 27 2e 0a 0a 55 73 65 |sage-mod|e'...Use|
|00004240| 20 43 2d 63 20 45 53 43 | 20 77 68 65 6e 20 79 6f | C-c ESC| when yo|
|00004250| 75 20 68 61 76 65 20 66 | 69 6e 69 73 68 65 64 20 |u have f|inished |
|00004260| 65 64 69 74 69 6e 67 20 | 74 68 65 20 6d 65 73 73 |editing |the mess|
|00004270| 61 67 65 2e 20 20 54 68 | 65 20 6d 65 73 73 61 67 |age. Th|e messag|
|00004280| 65 0a 77 69 6c 6c 20 62 | 65 20 69 6e 73 65 72 74 |e.will b|e insert|
|00004290| 65 64 20 69 6e 74 6f 20 | 69 74 73 20 66 6f 6c 64 |ed into |its fold|
|000042a0| 65 72 20 72 65 70 6c 61 | 63 69 6e 67 20 74 68 65 |er repla|cing the|
|000042b0| 20 6f 6c 64 20 76 65 72 | 73 69 6f 6e 20 6f 66 20 | old ver|sion of |
|000042c0| 74 68 65 0a 6d 65 73 73 | 61 67 65 2e 20 20 49 66 |the.mess|age. If|
|000042d0| 20 79 6f 75 20 64 6f 6e | 27 74 20 77 61 6e 74 20 | you don|'t want |
|000042e0| 79 6f 75 72 20 65 64 69 | 74 65 64 20 76 65 72 73 |your edi|ted vers|
|000042f0| 69 6f 6e 20 6f 66 20 74 | 68 65 20 6d 65 73 73 61 |ion of t|he messa|
|00004300| 67 65 20 74 6f 0a 72 65 | 70 6c 61 63 65 20 74 68 |ge to.re|place th|
|00004310| 65 20 6f 72 69 67 69 6e | 61 6c 2c 20 75 73 65 20 |e origin|al, use |
|00004320| 43 2d 63 20 43 2d 5d 2e | 22 0a 20 20 28 69 6e 74 |C-c C-].|". (int|
|00004330| 65 72 61 63 74 69 76 65 | 20 22 50 22 29 0a 20 20 |eractive| "P"). |
|00004340| 28 76 6d 2d 66 6f 6c 6c | 6f 77 2d 73 75 6d 6d 61 |(vm-foll|ow-summa|
|00004350| 72 79 2d 63 75 72 73 6f | 72 29 0a 20 20 28 76 6d |ry-curso|r). (vm|
|00004360| 2d 73 65 6c 65 63 74 2d | 66 6f 6c 64 65 72 2d 62 |-select-|folder-b|
|00004370| 75 66 66 65 72 29 0a 20 | 20 28 76 6d 2d 63 68 65 |uffer). | (vm-che|
|00004380| 63 6b 2d 66 6f 72 2d 6b | 69 6c 6c 65 64 2d 73 75 |ck-for-k|illed-su|
|00004390| 6d 6d 61 72 79 29 0a 20 | 20 28 76 6d 2d 65 72 72 |mmary). | (vm-err|
|000043a0| 6f 72 2d 69 66 2d 66 6f | 6c 64 65 72 2d 72 65 61 |or-if-fo|lder-rea|
|000043b0| 64 2d 6f 6e 6c 79 29 0a | 20 20 28 76 6d 2d 65 72 |d-only).| (vm-er|
|000043c0| 72 6f 72 2d 69 66 2d 66 | 6f 6c 64 65 72 2d 65 6d |ror-if-f|older-em|
|000043d0| 70 74 79 29 0a 20 20 28 | 69 66 20 70 72 65 66 69 |pty). (|if prefi|
|000043e0| 78 2d 61 72 67 75 6d 65 | 6e 74 0a 20 20 20 20 20 |x-argume|nt. |
|000043f0| 20 28 69 66 20 28 76 6d | 2d 65 64 69 74 65 64 2d | (if (vm|-edited-|
|00004400| 66 6c 61 67 20 28 63 61 | 72 20 76 6d 2d 6d 65 73 |flag (ca|r vm-mes|
|00004410| 73 61 67 65 2d 70 6f 69 | 6e 74 65 72 29 29 0a 09 |sage-poi|nter))..|
|00004420| 20 20 28 70 72 6f 67 6e | 0a 09 20 20 20 20 28 76 | (progn|.. (v|
|00004430| 6d 2d 73 65 74 2d 65 64 | 69 74 65 64 2d 66 6c 61 |m-set-ed|ited-fla|
|00004440| 67 20 28 63 61 72 20 76 | 6d 2d 6d 65 73 73 61 67 |g (car v|m-messag|
|00004450| 65 2d 70 6f 69 6e 74 65 | 72 29 20 6e 69 6c 29 0a |e-pointe|r) nil).|
|00004460| 09 20 20 20 20 28 76 6d | 2d 6d 61 72 6b 2d 66 6f |. (vm|-mark-fo|
|00004470| 72 2d 64 69 73 70 6c 61 | 79 2d 75 70 64 61 74 65 |r-displa|y-update|
|00004480| 20 28 63 61 72 20 76 6d | 2d 6d 65 73 73 61 67 65 | (car vm|-message|
|00004490| 2d 70 6f 69 6e 74 65 72 | 29 29 0a 09 20 20 20 20 |-pointer|)).. |
|000044a0| 28 69 66 20 28 65 71 20 | 76 6d 2d 66 6c 75 73 68 |(if (eq |vm-flush|
|000044b0| 2d 69 6e 74 65 72 76 61 | 6c 20 74 29 0a 09 09 28 |-interva|l t)...(|
|000044c0| 76 6d 2d 73 74 75 66 66 | 2d 76 69 72 74 75 61 6c |vm-stuff|-virtual|
|000044d0| 2d 61 74 74 72 69 62 75 | 74 65 73 20 28 63 61 72 |-attribu|tes (car|
|000044e0| 20 76 6d 2d 6d 65 73 73 | 61 67 65 2d 70 6f 69 6e | vm-mess|age-poin|
|000044f0| 74 65 72 29 29 0a 09 20 | 20 20 20 20 20 28 76 6d |ter)).. | (vm|
|00004500| 2d 73 65 74 2d 6d 6f 64 | 66 6c 61 67 2d 6f 66 20 |-set-mod|flag-of |
|00004510| 28 63 61 72 20 76 6d 2d | 6d 65 73 73 61 67 65 2d |(car vm-|message-|
|00004520| 70 6f 69 6e 74 65 72 29 | 20 74 29 29 0a 09 20 20 |pointer)| t)).. |
|00004530| 20 20 28 76 6d 2d 73 65 | 74 2d 62 75 66 66 65 72 | (vm-se|t-buffer|
|00004540| 2d 6d 6f 64 69 66 69 65 | 64 2d 70 20 74 20 28 76 |-modifie|d-p t (v|
|00004550| 6d 2d 63 75 72 72 65 6e | 74 2d 6d 65 73 73 61 67 |m-curren|t-messag|
|00004560| 65 2d 62 75 66 66 65 72 | 29 29 0a 09 20 20 20 20 |e-buffer|)).. |
|00004570| 28 76 6d 2d 75 70 64 61 | 74 65 2d 73 75 6d 6d 61 |(vm-upda|te-summa|
|00004580| 72 79 2d 61 6e 64 2d 6d | 6f 64 65 2d 6c 69 6e 65 |ry-and-m|ode-line|
|00004590| 29 29 0a 09 28 6d 65 73 | 73 61 67 65 20 22 4d 65 |))..(mes|sage "Me|
|000045a0| 73 73 61 67 65 20 68 61 | 73 20 6e 6f 74 20 62 65 |ssage ha|s not be|
|000045b0| 65 6e 20 65 64 69 74 65 | 64 2e 22 29 29 0a 20 20 |en edite|d.")). |
|000045c0| 20 20 28 6c 65 74 20 28 | 28 6d 70 20 76 6d 2d 6d | (let (|(mp vm-m|
|000045d0| 65 73 73 61 67 65 2d 70 | 6f 69 6e 74 65 72 29 0a |essage-p|ointer).|
|000045e0| 09 20 20 28 65 64 69 74 | 2d 62 75 66 20 28 76 6d |. (edit|-buf (vm|
|000045f0| 2d 65 64 69 74 2d 62 75 | 66 66 65 72 2d 6f 66 20 |-edit-bu|ffer-of |
|00004600| 28 63 61 72 20 76 6d 2d | 6d 65 73 73 61 67 65 2d |(car vm-|message-|
|00004610| 70 6f 69 6e 74 65 72 29 | 29 29 0a 09 20 20 28 66 |pointer)|)).. (f|
|00004620| 6f 6c 64 65 72 2d 62 75 | 66 66 65 72 20 28 63 75 |older-bu|ffer (cu|
|00004630| 72 72 65 6e 74 2d 62 75 | 66 66 65 72 29 29 0a 09 |rrent-bu|ffer))..|
|00004640| 20 20 28 69 6e 68 69 62 | 69 74 2d 71 75 69 74 20 | (inhib|it-quit |
|00004650| 74 29 29 0a 20 20 20 20 | 20 20 28 69 66 20 28 6e |t)). | (if (n|
|00004660| 6f 74 20 28 61 6e 64 20 | 65 64 69 74 2d 62 75 66 |ot (and |edit-buf|
|00004670| 20 28 62 75 66 66 65 72 | 2d 6e 61 6d 65 20 65 64 | (buffer|-name ed|
|00004680| 69 74 2d 62 75 66 29 29 | 29 0a 09 20 20 28 70 72 |it-buf))|).. (pr|
|00004690| 6f 67 6e 0a 09 20 20 20 | 20 28 76 6d 2d 73 61 76 |ogn.. | (vm-sav|
|000046a0| 65 2d 72 65 73 74 72 69 | 63 74 69 6f 6e 0a 09 20 |e-restri|ction.. |
|000046b0| 20 20 20 20 20 28 77 69 | 64 65 6e 29 0a 09 20 20 | (wi|den).. |
|000046c0| 20 20 20 20 28 73 65 74 | 71 20 65 64 69 74 2d 62 | (set|q edit-b|
|000046d0| 75 66 20 28 67 65 6e 65 | 72 61 74 65 2d 6e 65 77 |uf (gene|rate-new|
|000046e0| 2d 62 75 66 66 65 72 20 | 22 2a 56 4d 20 6d 65 73 |-buffer |"*VM mes|
|000046f0| 73 61 67 65 20 65 64 69 | 74 2a 22 29 29 0a 09 20 |sage edi|t*")).. |
|00004700| 20 20 20 20 20 28 76 6d | 2d 73 65 74 2d 65 64 69 | (vm|-set-edi|
|00004710| 74 2d 62 75 66 66 65 72 | 2d 6f 66 20 28 63 61 72 |t-buffer|-of (car|
|00004720| 20 6d 70 29 20 65 64 69 | 74 2d 62 75 66 29 0a 09 | mp) edi|t-buf)..|
|00004730| 20 20 20 20 20 20 28 63 | 6f 70 79 2d 74 6f 2d 62 | (c|opy-to-b|
|00004740| 75 66 66 65 72 20 65 64 | 69 74 2d 62 75 66 0a 09 |uffer ed|it-buf..|
|00004750| 09 09 20 20 20 20 20 20 | 28 73 61 76 65 2d 65 78 |.. |(save-ex|
|00004760| 63 75 72 73 69 6f 6e 0a | 09 09 09 09 28 67 6f 74 |cursion.|....(got|
|00004770| 6f 2d 63 68 61 72 20 28 | 76 6d 2d 73 74 61 72 74 |o-char (|vm-start|
|00004780| 2d 6f 66 20 28 63 61 72 | 20 6d 70 29 29 29 0a 09 |-of (car| mp)))..|
|00004790| 09 09 09 28 66 6f 72 77 | 61 72 64 2d 6c 69 6e 65 |...(forw|ard-line|
|000047a0| 20 31 29 0a 09 09 09 09 | 28 70 6f 69 6e 74 29 29 | 1).....|(point))|
|000047b0| 0a 09 09 09 20 20 20 20 | 20 20 28 76 6d 2d 74 65 |.... | (vm-te|
|000047c0| 78 74 2d 65 6e 64 2d 6f | 66 20 28 63 61 72 20 6d |xt-end-o|f (car m|
|000047d0| 70 29 29 29 29 0a 09 20 | 20 20 20 28 69 66 20 28 |p)))).. | (if (|
|000047e0| 67 65 74 2d 62 75 66 66 | 65 72 2d 77 69 6e 64 6f |get-buff|er-windo|
|000047f0| 77 20 65 64 69 74 2d 62 | 75 66 29 0a 09 09 28 73 |w edit-b|uf)...(s|
|00004800| 65 6c 65 63 74 2d 77 69 | 6e 64 6f 77 20 28 67 65 |elect-wi|ndow (ge|
|00004810| 74 2d 62 75 66 66 65 72 | 2d 77 69 6e 64 6f 77 20 |t-buffer|-window |
|00004820| 65 64 69 74 2d 62 75 66 | 29 29 0a 09 20 20 20 20 |edit-buf|)).. |
|00004830| 20 20 28 73 77 69 74 63 | 68 2d 74 6f 2d 62 75 66 | (switc|h-to-buf|
|00004840| 66 65 72 20 65 64 69 74 | 2d 62 75 66 29 29 0a 09 |fer edit|-buf))..|
|00004850| 20 20 20 20 28 73 65 74 | 2d 62 75 66 66 65 72 2d | (set|-buffer-|
|00004860| 6d 6f 64 69 66 69 65 64 | 2d 70 20 6e 69 6c 29 0a |modified|-p nil).|
|00004870| 09 20 20 20 20 28 67 6f | 74 6f 2d 63 68 61 72 20 |. (go|to-char |
|00004880| 28 70 6f 69 6e 74 2d 6d | 69 6e 29 29 0a 09 20 20 |(point-m|in)).. |
|00004890| 20 20 28 73 65 61 72 63 | 68 2d 66 6f 72 77 61 72 | (searc|h-forwar|
|000048a0| 64 20 22 5c 6e 5c 6e 22 | 20 28 70 6f 69 6e 74 2d |d "\n\n"| (point-|
|000048b0| 6d 61 78 29 20 74 29 0a | 09 20 20 20 20 28 66 75 |max) t).|. (fu|
|000048c0| 6e 63 61 6c 6c 20 28 6f | 72 20 76 6d 2d 65 64 69 |ncall (o|r vm-edi|
|000048d0| 74 2d 6d 65 73 73 61 67 | 65 2d 6d 6f 64 65 20 27 |t-messag|e-mode '|
|000048e0| 74 65 78 74 2d 6d 6f 64 | 65 29 29 0a 09 20 20 20 |text-mod|e)).. |
|000048f0| 20 28 73 65 74 71 20 76 | 6d 2d 6d 65 73 73 61 67 | (setq v|m-messag|
|00004900| 65 2d 70 6f 69 6e 74 65 | 72 20 6d 70 0a 09 09 20 |e-pointe|r mp... |
|00004910| 20 76 6d 2d 6d 61 69 6c | 2d 62 75 66 66 65 72 20 | vm-mail|-buffer |
|00004920| 66 6f 6c 64 65 72 2d 62 | 75 66 66 65 72 29 0a 09 |folder-b|uffer)..|
|00004930| 20 20 20 20 28 75 73 65 | 2d 6c 6f 63 61 6c 2d 6d | (use|-local-m|
|00004940| 61 70 20 28 63 6f 70 79 | 2d 6b 65 79 6d 61 70 20 |ap (copy|-keymap |
|00004950| 28 6f 72 20 28 63 75 72 | 72 65 6e 74 2d 6c 6f 63 |(or (cur|rent-loc|
|00004960| 61 6c 2d 6d 61 70 29 0a | 09 09 09 09 09 20 20 20 |al-map).|..... |
|00004970| 20 28 6d 61 6b 65 2d 73 | 70 61 72 73 65 2d 6b 65 | (make-s|parse-ke|
|00004980| 79 6d 61 70 29 29 29 29 | 0a 09 20 20 20 20 28 76 |ymap))))|.. (v|
|00004990| 6d 2d 6f 76 65 72 6c 61 | 79 2d 6b 65 79 6d 61 70 |m-overla|y-keymap|
|000049a0| 20 76 6d 2d 65 64 69 74 | 2d 6d 65 73 73 61 67 65 | vm-edit|-message|
|000049b0| 2d 6d 6f 64 65 2d 6d 61 | 70 20 28 63 75 72 72 65 |-mode-ma|p (curre|
|000049c0| 6e 74 2d 6c 6f 63 61 6c | 2d 6d 61 70 29 29 0a 09 |nt-local|-map))..|
|000049d0| 20 20 20 20 28 6d 65 73 | 73 61 67 65 20 22 54 79 | (mes|sage "Ty|
|000049e0| 70 65 20 43 2d 63 20 45 | 53 43 20 74 6f 20 65 6e |pe C-c E|SC to en|
|000049f0| 64 20 65 64 69 74 2c 20 | 43 2d 63 20 43 2d 5d 20 |d edit, |C-c C-] |
|00004a00| 74 6f 20 61 62 6f 72 74 | 20 77 69 74 68 20 6e 6f |to abort| with no|
|00004a10| 20 63 68 61 6e 67 65 2e | 22 29 29 0a 09 28 73 77 | change.|"))..(sw|
|00004a20| 69 74 63 68 2d 74 6f 2d | 62 75 66 66 65 72 20 65 |itch-to-|buffer e|
|00004a30| 64 69 74 2d 62 75 66 29 | 29 29 29 29 0a 0a 28 64 |dit-buf)|))))..(d|
|00004a40| 65 66 75 6e 20 76 6d 2d | 6f 76 65 72 6c 61 79 2d |efun vm-|overlay-|
|00004a50| 6b 65 79 6d 61 70 20 28 | 73 72 63 2d 6d 61 70 20 |keymap (|src-map |
|00004a60| 64 65 73 74 2d 6d 61 70 | 29 0a 20 20 28 6c 65 74 |dest-map|). (let|
|00004a70| 20 28 28 6f 6c 64 2d 6c | 6f 63 61 6c 2d 6d 61 70 | ((old-l|ocal-map|
|00004a80| 20 28 63 75 72 72 65 6e | 74 2d 6c 6f 63 61 6c 2d | (curren|t-local-|
|00004a90| 6d 61 70 29 29 29 0a 20 | 20 20 20 28 75 6e 77 69 |map))). | (unwi|
|00004aa0| 6e 64 2d 70 72 6f 74 65 | 63 74 0a 09 28 70 72 6f |nd-prote|ct..(pro|
|00004ab0| 67 6e 0a 09 20 20 28 75 | 73 65 2d 6c 6f 63 61 6c |gn.. (u|se-local|
|00004ac0| 2d 6d 61 70 20 64 65 73 | 74 2d 6d 61 70 29 0a 09 |-map des|t-map)..|
|00004ad0| 20 20 28 63 6f 6e 64 0a | 09 20 20 20 28 28 76 65 | (cond.|. ((ve|
|00004ae0| 63 74 6f 72 70 20 73 72 | 63 2d 6d 61 70 29 0a 09 |ctorp sr|c-map)..|
|00004af0| 20 20 20 20 28 6c 65 74 | 20 28 28 69 20 28 31 2d | (let| ((i (1-|
|00004b00| 20 28 6c 65 6e 67 74 68 | 20 73 72 63 2d 6d 61 70 | (length| src-map|
|00004b10| 29 29 29 20 73 72 63 2d | 62 20 64 65 73 74 2d 62 |))) src-|b dest-b|
|00004b20| 29 0a 09 20 20 20 20 20 | 20 28 77 68 69 6c 65 20 |).. | (while |
|00004b30| 28 3e 3d 20 69 20 30 29 | 0a 09 09 28 73 65 74 71 |(>= i 0)|...(setq|
|00004b40| 20 73 72 63 2d 62 20 28 | 61 72 65 66 20 73 72 63 | src-b (|aref src|
|00004b50| 2d 6d 61 70 20 69 29 29 | 0a 09 09 28 63 6f 6e 64 |-map i))|...(cond|
|00004b60| 0a 09 09 20 28 28 6e 75 | 6c 6c 20 73 72 63 2d 62 |... ((nu|ll src-b|
|00004b70| 29 29 0a 09 09 20 28 28 | 6b 65 79 6d 61 70 70 20 |))... ((|keymapp |
|00004b80| 73 72 63 2d 62 29 0a 09 | 09 20 20 28 73 65 74 71 |src-b)..|. (setq|
|00004b90| 20 64 65 73 74 2d 62 20 | 28 6c 6f 63 61 6c 2d 6b | dest-b |(local-k|
|00004ba0| 65 79 2d 62 69 6e 64 69 | 6e 67 20 28 63 68 61 72 |ey-bindi|ng (char|
|00004bb0| 2d 74 6f 2d 73 74 72 69 | 6e 67 20 69 29 29 29 0a |-to-stri|ng i))).|
|00004bc0| 09 09 20 20 28 69 66 20 | 28 6e 6f 74 20 28 6b 65 |.. (if |(not (ke|
|00004bd0| 79 6d 61 70 70 20 64 65 | 73 74 2d 62 29 29 0a 09 |ymapp de|st-b))..|
|00004be0| 09 20 20 20 20 20 20 28 | 64 65 66 69 6e 65 2d 6b |. (|define-k|
|00004bf0| 65 79 20 64 65 73 74 2d | 6d 61 70 20 28 63 68 61 |ey dest-|map (cha|
|00004c00| 72 2d 74 6f 2d 73 74 72 | 69 6e 67 20 69 29 0a 09 |r-to-str|ing i)..|
|00004c10| 09 09 28 73 65 74 71 20 | 64 65 73 74 2d 62 20 28 |..(setq |dest-b (|
|00004c20| 6d 61 6b 65 2d 73 70 61 | 72 73 65 2d 6b 65 79 6d |make-spa|rse-keym|
|00004c30| 61 70 29 29 29 29 0a 09 | 09 20 20 28 76 6d 2d 6f |ap))))..|. (vm-o|
|00004c40| 76 65 72 6c 61 79 2d 6b | 65 79 6d 61 70 20 73 72 |verlay-k|eymap sr|
|00004c50| 63 2d 62 20 64 65 73 74 | 2d 62 29 29 0a 09 09 20 |c-b dest|-b))... |
|00004c60| 28 74 0a 09 09 20 20 28 | 64 65 66 69 6e 65 2d 6b |(t... (|define-k|
|00004c70| 65 79 20 64 65 73 74 2d | 6d 61 70 20 28 63 68 61 |ey dest-|map (cha|
|00004c80| 72 2d 74 6f 2d 73 74 72 | 69 6e 67 20 69 29 20 73 |r-to-str|ing i) s|
|00004c90| 72 63 2d 62 29 29 29 0a | 09 09 28 76 6d 2d 64 65 |rc-b))).|..(vm-de|
|00004ca0| 63 72 65 6d 65 6e 74 20 | 69 29 29 29 29 0a 09 20 |crement |i)))).. |
|00004cb0| 20 20 28 74 0a 09 20 20 | 20 20 28 6c 65 74 20 28 | (t.. | (let (|
|00004cc0| 73 72 63 2d 62 20 64 65 | 73 74 2d 62 29 0a 09 20 |src-b de|st-b).. |
|00004cd0| 20 20 20 20 20 28 73 65 | 74 71 20 73 72 63 2d 6d | (se|tq src-m|
|00004ce0| 61 70 20 28 63 64 72 20 | 73 72 63 2d 6d 61 70 29 |ap (cdr |src-map)|
|00004cf0| 29 0a 09 20 20 20 20 20 | 20 28 77 68 69 6c 65 20 |).. | (while |
|00004d00| 73 72 63 2d 6d 61 70 0a | 09 09 28 73 65 74 71 20 |src-map.|..(setq |
|00004d10| 73 72 63 2d 62 20 28 63 | 64 72 20 28 63 61 72 20 |src-b (c|dr (car |
|00004d20| 73 72 63 2d 6d 61 70 29 | 29 29 0a 09 09 28 63 6f |src-map)|))...(co|
|00004d30| 6e 64 0a 09 09 20 28 28 | 6e 75 6c 6c 20 73 72 63 |nd... ((|null src|
|00004d40| 2d 62 29 29 0a 09 09 20 | 28 28 6b 65 79 6d 61 70 |-b))... |((keymap|
|00004d50| 70 20 73 72 63 2d 62 29 | 0a 09 09 20 20 28 73 65 |p src-b)|... (se|
|00004d60| 74 71 20 64 65 73 74 2d | 62 20 28 6c 6f 63 61 6c |tq dest-|b (local|
|00004d70| 2d 6b 65 79 2d 62 69 6e | 64 69 6e 67 0a 09 09 09 |-key-bin|ding....|
|00004d80| 09 28 63 68 61 72 2d 74 | 6f 2d 73 74 72 69 6e 67 |.(char-t|o-string|
|00004d90| 20 28 63 61 72 20 28 63 | 61 72 20 73 72 63 2d 6d | (car (c|ar src-m|
|00004da0| 61 70 29 29 29 29 29 0a | 09 09 20 20 28 69 66 20 |ap))))).|.. (if |
|00004db0| 28 6e 6f 74 20 28 6b 65 | 79 6d 61 70 70 20 64 65 |(not (ke|ymapp de|
|00004dc0| 73 74 2d 62 29 29 0a 09 | 09 20 20 20 20 20 20 28 |st-b))..|. (|
|00004dd0| 64 65 66 69 6e 65 2d 6b | 65 79 20 64 65 73 74 2d |define-k|ey dest-|
|00004de0| 6d 61 70 20 28 63 68 61 | 72 2d 74 6f 2d 73 74 72 |map (cha|r-to-str|
|00004df0| 69 6e 67 20 28 63 61 72 | 20 28 63 61 72 20 73 72 |ing (car| (car sr|
|00004e00| 63 2d 6d 61 70 29 29 29 | 0a 09 09 09 28 73 65 74 |c-map)))|....(set|
|00004e10| 71 20 64 65 73 74 2d 62 | 20 28 6d 61 6b 65 2d 73 |q dest-b| (make-s|
|00004e20| 70 61 72 73 65 2d 6b 65 | 79 6d 61 70 29 29 29 29 |parse-ke|ymap))))|
|00004e30| 0a 09 09 20 20 28 76 6d | 2d 6f 76 65 72 6c 61 79 |... (vm|-overlay|
|00004e40| 2d 6b 65 79 6d 61 70 20 | 73 72 63 2d 62 20 64 65 |-keymap |src-b de|
|00004e50| 73 74 2d 62 29 29 0a 09 | 09 20 28 74 0a 09 09 20 |st-b))..|. (t... |
|00004e60| 20 28 64 65 66 69 6e 65 | 2d 6b 65 79 20 64 65 73 | (define|-key des|
|00004e70| 74 2d 6d 61 70 20 28 63 | 68 61 72 2d 74 6f 2d 73 |t-map (c|har-to-s|
|00004e80| 74 72 69 6e 67 20 28 63 | 61 72 20 28 63 61 72 20 |tring (c|ar (car |
|00004e90| 73 72 63 2d 6d 61 70 29 | 29 29 0a 09 09 20 20 20 |src-map)|))... |
|00004ea0| 20 73 72 63 2d 62 29 29 | 29 0a 09 09 28 73 65 74 | src-b))|)...(set|
|00004eb0| 71 20 73 72 63 2d 6d 61 | 70 20 28 63 64 72 20 73 |q src-ma|p (cdr s|
|00004ec0| 72 63 2d 6d 61 70 29 29 | 29 29 29 29 29 0a 20 20 |rc-map))|))))). |
|00004ed0| 20 20 20 20 28 75 73 65 | 2d 6c 6f 63 61 6c 2d 6d | (use|-local-m|
|00004ee0| 61 70 20 6f 6c 64 2d 6c | 6f 63 61 6c 2d 6d 61 70 |ap old-l|ocal-map|
|00004ef0| 29 29 29 29 0a 09 09 09 | 09 0a 28 64 65 66 75 6e |))))....|..(defun|
|00004f00| 20 76 6d 2d 64 69 73 63 | 61 72 64 2d 63 61 63 68 | vm-disc|ard-cach|
|00004f10| 65 64 2d 64 61 74 61 20 | 28 26 6f 70 74 69 6f 6e |ed-data |(&option|
|00004f20| 61 6c 20 63 6f 75 6e 74 | 29 0a 20 20 22 44 69 73 |al count|). "Dis|
|00004f30| 63 61 72 64 20 63 61 63 | 68 65 64 20 69 6e 66 6f |card cac|hed info|
|00004f40| 72 6d 61 74 69 6f 6e 20 | 61 62 6f 75 74 20 74 68 |rmation |about th|
|00004f50| 65 20 63 75 72 72 65 6e | 74 20 6d 65 73 73 61 67 |e curren|t messag|
|00004f60| 65 2e 0a 57 68 65 6e 20 | 56 4d 20 64 69 67 73 20 |e..When |VM digs |
|00004f70| 69 6e 66 6f 72 6d 61 74 | 69 6f 6e 20 66 72 6f 6d |informat|ion from|
|00004f80| 20 74 68 65 20 68 65 61 | 64 65 72 73 20 6f 66 20 | the hea|ders of |
|00004f90| 61 20 6d 65 73 73 61 67 | 65 2c 20 69 74 20 73 74 |a messag|e, it st|
|00004fa0| 6f 72 65 73 20 69 74 0a | 69 75 6e 74 65 72 6e 61 |ores it.|iunterna|
|00004fb0| 6c 6c 79 20 66 6f 72 20 | 66 75 74 75 72 65 20 72 |lly for |future r|
|00004fc0| 65 66 65 72 65 6e 63 65 | 2e 20 20 54 68 69 73 20 |eference|. This |
|00004fd0| 63 6f 6d 6d 61 6e 64 20 | 63 61 75 73 65 73 20 56 |command |causes V|
|00004fe0| 4d 20 74 6f 20 66 6f 72 | 67 65 74 20 74 68 69 73 |M to for|get this|
|00004ff0| 0a 69 6e 66 6f 72 6d 61 | 74 69 6f 6e 2c 20 61 6e |.informa|tion, an|
|00005000| 64 20 56 4d 20 77 69 6c | 6c 20 62 65 20 66 6f 72 |d VM wil|l be for|
|00005010| 63 65 64 20 74 6f 20 73 | 65 61 72 63 68 20 74 68 |ced to s|earch th|
|00005020| 65 20 68 65 61 64 65 72 | 73 20 6f 66 20 74 68 65 |e header|s of the|
|00005030| 20 6d 65 73 73 61 67 65 | 0a 61 67 61 69 6e 20 66 | message|.again f|
|00005040| 6f 72 20 74 68 65 73 65 | 20 64 61 74 61 2e 20 20 |or these| data. |
|00005050| 56 4d 20 77 69 6c 6c 20 | 61 6c 73 6f 20 68 61 76 |VM will |also hav|
|00005060| 65 20 74 6f 20 64 65 63 | 69 64 65 20 61 67 61 69 |e to dec|ide agai|
|00005070| 6e 20 77 68 69 63 68 20 | 68 65 61 64 65 72 73 0a |n which |headers.|
|00005080| 73 68 6f 75 6c 64 20 62 | 65 20 64 69 73 70 6c 61 |should b|e displa|
|00005090| 79 65 64 20 61 6e 64 20 | 77 68 69 63 68 20 73 68 |yed and |which sh|
|000050a0| 6f 75 6c 64 20 6e 6f 74 | 2e 20 20 54 68 65 72 65 |ould not|. There|
|000050b0| 66 6f 72 65 20 74 68 69 | 73 20 63 6f 6d 6d 61 6e |fore thi|s comman|
|000050c0| 64 20 69 73 0a 75 73 65 | 66 75 6c 20 69 66 20 79 |d is.use|ful if y|
|000050d0| 6f 75 20 63 68 61 6e 67 | 65 20 74 68 65 20 76 61 |ou chang|e the va|
|000050e0| 6c 75 65 20 6f 66 20 76 | 6d 2d 76 69 73 69 62 6c |lue of v|m-visibl|
|000050f0| 65 2d 68 65 61 64 65 72 | 73 20 6f 72 0a 76 6d 2d |e-header|s or.vm-|
|00005100| 69 6e 76 69 73 69 62 6c | 65 2d 68 65 61 64 65 72 |invisibl|e-header|
|00005110| 73 20 69 6e 20 74 68 65 | 20 6d 69 64 73 74 20 6f |s in the| midst o|
|00005120| 66 20 61 20 56 4d 20 73 | 65 73 73 69 6f 6e 2e 0a |f a VM s|ession..|
|00005130| 0a 4e 75 6d 65 72 69 63 | 20 70 72 65 66 69 78 20 |.Numeric| prefix |
|00005140| 61 72 67 75 6d 65 6e 74 | 20 4e 20 6d 65 61 6e 73 |argument| N means|
|00005150| 20 74 6f 20 64 69 73 63 | 61 72 64 20 64 61 74 61 | to disc|ard data|
|00005160| 20 66 72 6f 6d 20 74 68 | 65 20 63 75 72 72 65 6e | from th|e curren|
|00005170| 74 20 6d 65 73 73 61 67 | 65 0a 70 6c 75 73 20 74 |t messag|e.plus t|
|00005180| 68 65 20 6e 65 78 74 20 | 4e 2d 31 20 6d 65 73 73 |he next |N-1 mess|
|00005190| 61 67 65 73 2e 20 20 41 | 20 6e 65 67 61 74 69 76 |ages. A| negativ|
|000051a0| 65 20 4e 20 6d 65 61 6e | 73 20 64 69 73 63 61 72 |e N mean|s discar|
|000051b0| 64 20 64 61 74 61 20 66 | 72 6f 6d 20 74 68 65 0a |d data f|rom the.|
|000051c0| 63 75 72 72 65 6e 74 20 | 6d 65 73 73 61 67 65 20 |current |message |
|000051d0| 61 6e 64 20 74 68 65 20 | 70 72 65 76 69 6f 75 73 |and the |previous|
|000051e0| 20 4e 2d 31 20 6d 65 73 | 73 61 67 65 73 2e 0a 0a | N-1 mes|sages...|
|000051f0| 57 68 65 6e 20 69 6e 76 | 6f 6b 65 64 20 6f 6e 20 |When inv|oked on |
|00005200| 6d 61 72 6b 65 64 20 6d | 65 73 73 61 67 65 73 20 |marked m|essages |
|00005210| 28 76 69 61 20 76 6d 2d | 6e 65 78 74 2d 63 6f 6d |(via vm-|next-com|
|00005220| 6d 61 6e 64 2d 75 73 65 | 73 2d 6d 61 72 6b 73 29 |mand-use|s-marks)|
|00005230| 2c 0a 64 61 74 61 20 69 | 73 20 64 69 73 63 61 72 |,.data i|s discar|
|00005240| 64 65 64 20 6f 6e 6c 79 | 20 66 72 6f 6d 20 74 68 |ded only| from th|
|00005250| 65 20 6d 61 72 6b 65 64 | 20 6d 65 73 73 61 67 65 |e marked| message|
|00005260| 73 20 69 6e 20 74 68 65 | 20 63 75 72 72 65 6e 74 |s in the| current|
|00005270| 20 66 6f 6c 64 65 72 2e | 22 0a 20 20 28 69 6e 74 | folder.|". (int|
|00005280| 65 72 61 63 74 69 76 65 | 20 22 70 22 29 0a 20 20 |eractive| "p"). |
|00005290| 28 6f 72 20 63 6f 75 6e | 74 20 28 73 65 74 71 20 |(or coun|t (setq |
|000052a0| 63 6f 75 6e 74 20 31 29 | 29 0a 20 20 28 76 6d 2d |count 1)|). (vm-|
|000052b0| 66 6f 6c 6c 6f 77 2d 73 | 75 6d 6d 61 72 79 2d 63 |follow-s|ummary-c|
|000052c0| 75 72 73 6f 72 29 0a 20 | 20 28 76 6d 2d 73 65 6c |ursor). | (vm-sel|
|000052d0| 65 63 74 2d 66 6f 6c 64 | 65 72 2d 62 75 66 66 65 |ect-fold|er-buffe|
|000052e0| 72 29 0a 20 20 28 76 6d | 2d 63 68 65 63 6b 2d 66 |r). (vm|-check-f|
|000052f0| 6f 72 2d 6b 69 6c 6c 65 | 64 2d 73 75 6d 6d 61 72 |or-kille|d-summar|
|00005300| 79 29 0a 20 20 28 76 6d | 2d 65 72 72 6f 72 2d 69 |y). (vm|-error-i|
|00005310| 66 2d 66 6f 6c 64 65 72 | 2d 65 6d 70 74 79 29 0a |f-folder|-empty).|
|00005320| 20 20 3b 3b 20 44 6f 20 | 74 68 69 73 20 69 6e 20 | ;; Do |this in |
|00005330| 63 61 73 65 20 74 68 65 | 20 75 73 65 72 20 69 73 |case the| user is|
|00005340| 20 75 73 69 6e 67 20 74 | 68 69 73 20 63 6f 6d 6d | using t|his comm|
|00005350| 61 6e 64 20 62 65 63 61 | 75 73 65 20 74 68 65 0a |and beca|use the.|
|00005360| 20 20 3b 3b 20 76 61 72 | 69 61 62 6c 65 73 20 74 | ;; var|iables t|
|00005370| 68 61 74 20 63 6f 6e 74 | 72 6f 6c 20 76 69 73 69 |hat cont|rol visi|
|00005380| 62 6c 65 20 68 65 61 64 | 65 72 73 20 68 61 76 65 |ble head|ers have|
|00005390| 20 62 65 65 6e 20 61 6c | 74 65 72 65 64 2e 0a 20 | been al|tered.. |
|000053a0| 20 28 76 6d 2d 62 75 69 | 6c 64 2d 76 69 73 69 62 | (vm-bui|ld-visib|
|000053b0| 6c 65 2d 68 65 61 64 65 | 72 2d 61 6c 69 73 74 29 |le-heade|r-alist)|
|000053c0| 0a 20 20 28 6c 65 74 20 | 28 28 6d 6c 69 73 74 20 |. (let |((mlist |
|000053d0| 28 76 6d 2d 73 65 6c 65 | 63 74 2d 6d 61 72 6b 65 |(vm-sele|ct-marke|
|000053e0| 64 2d 6f 72 2d 70 72 65 | 66 69 78 65 64 2d 6d 65 |d-or-pre|fixed-me|
|000053f0| 73 73 61 67 65 73 20 63 | 6f 75 6e 74 29 29 29 0a |ssages c|ount))).|
|00005400| 20 20 20 20 28 77 68 69 | 6c 65 20 6d 6c 69 73 74 | (whi|le mlist|
|00005410| 0a 20 20 20 20 20 20 28 | 76 6d 2d 73 65 74 2d 63 |. (|vm-set-c|
|00005420| 61 63 68 65 2d 6f 66 20 | 28 63 61 72 20 6d 6c 69 |ache-of |(car mli|
|00005430| 73 74 29 0a 09 09 20 20 | 20 20 20 20 20 28 6d 61 |st)... | (ma|
|00005440| 6b 65 2d 76 65 63 74 6f | 72 0a 09 09 09 28 6c 65 |ke-vecto|r....(le|
|00005450| 6e 67 74 68 20 28 76 6d | 2d 63 61 63 68 65 2d 6f |ngth (vm|-cache-o|
|00005460| 66 20 28 63 61 72 20 6d | 6c 69 73 74 29 29 29 0a |f (car m|list))).|
|00005470| 09 09 09 6e 69 6c 20 29 | 29 0a 20 20 20 20 20 20 |...nil )|). |
|00005480| 28 76 6d 2d 73 65 74 2d | 76 68 65 61 64 65 72 73 |(vm-set-|vheaders|
|00005490| 2d 6f 66 20 28 63 61 72 | 20 6d 6c 69 73 74 29 20 |-of (car| mlist) |
|000054a0| 6e 69 6c 29 0a 20 20 20 | 20 20 20 28 76 6d 2d 73 |nil). | (vm-s|
|000054b0| 65 74 2d 76 68 65 61 64 | 65 72 73 2d 72 65 67 65 |et-vhead|ers-rege|
|000054c0| 78 70 2d 6f 66 20 28 63 | 61 72 20 6d 6c 69 73 74 |xp-of (c|ar mlist|
|000054d0| 29 20 6e 69 6c 29 0a 20 | 20 20 20 20 20 28 76 6d |) nil). | (vm|
|000054e0| 2d 73 65 74 2d 74 65 78 | 74 2d 6f 66 20 28 63 61 |-set-tex|t-of (ca|
|000054f0| 72 20 6d 6c 69 73 74 29 | 20 6e 69 6c 29 0a 20 20 |r mlist)| nil). |
|00005500| 20 20 20 20 28 76 6d 2d | 6d 61 72 6b 2d 66 6f 72 | (vm-|mark-for|
|00005510| 2d 64 69 73 70 6c 61 79 | 2d 75 70 64 61 74 65 20 |-display|-update |
|00005520| 28 63 61 72 20 6d 6c 69 | 73 74 29 29 0a 20 20 20 |(car mli|st)). |
|00005530| 20 20 20 28 73 65 74 71 | 20 6d 6c 69 73 74 20 28 | (setq| mlist (|
|00005540| 63 64 72 20 6d 6c 69 73 | 74 29 29 29 29 0a 20 20 |cdr mlis|t)))). |
|00005550| 28 76 6d 2d 75 70 64 61 | 74 65 2d 73 75 6d 6d 61 |(vm-upda|te-summa|
|00005560| 72 79 2d 61 6e 64 2d 6d | 6f 64 65 2d 6c 69 6e 65 |ry-and-m|ode-line|
|00005570| 29 29 0a 0a 28 64 65 66 | 75 6e 20 76 6d 2d 65 64 |))..(def|un vm-ed|
|00005580| 69 74 2d 6d 65 73 73 61 | 67 65 2d 65 6e 64 20 28 |it-messa|ge-end (|
|00005590| 29 0a 20 20 22 45 6e 64 | 20 74 68 65 20 65 64 69 |). "End| the edi|
|000055a0| 74 20 6f 66 20 61 20 56 | 4d 20 6d 61 69 6c 20 6d |t of a V|M mail m|
|000055b0| 65 73 73 61 67 65 20 61 | 6e 64 20 63 6f 70 79 20 |essage a|nd copy |
|000055c0| 74 68 65 20 6e 65 77 20 | 76 65 72 73 69 6f 6e 0a |the new |version.|
|000055d0| 74 6f 20 74 68 65 20 6d | 65 73 73 61 67 65 27 73 |to the m|essage's|
|000055e0| 20 66 6f 6c 64 65 72 2e | 22 0a 20 20 28 69 6e 74 | folder.|". (int|
|000055f0| 65 72 61 63 74 69 76 65 | 29 0a 20 20 28 69 66 20 |eractive|). (if |
|00005600| 28 6e 75 6c 6c 20 76 6d | 2d 6d 65 73 73 61 67 65 |(null vm|-message|
|00005610| 2d 70 6f 69 6e 74 65 72 | 29 0a 20 20 20 20 20 20 |-pointer|). |
|00005620| 28 65 72 72 6f 72 20 22 | 54 68 69 73 20 69 73 20 |(error "|This is |
|00005630| 6e 6f 74 20 61 20 56 4d | 20 6d 65 73 73 61 67 65 |not a VM| message|
|00005640| 20 65 64 69 74 20 62 75 | 66 66 65 72 2e 22 29 29 | edit bu|ffer."))|
|00005650| 0a 20 20 28 69 66 20 28 | 6e 75 6c 6c 20 28 62 75 |. (if (|null (bu|
|00005660| 66 66 65 72 2d 6e 61 6d | 65 20 28 6d 61 72 6b 65 |ffer-nam|e (marke|
|00005670| 72 2d 62 75 66 66 65 72 | 20 28 76 6d 2d 65 6e 64 |r-buffer| (vm-end|
|00005680| 2d 6f 66 20 28 63 61 72 | 20 76 6d 2d 6d 65 73 73 |-of (car| vm-mess|
|00005690| 61 67 65 2d 70 6f 69 6e | 74 65 72 29 29 29 29 29 |age-poin|ter)))))|
|000056a0| 0a 20 20 20 20 20 20 28 | 65 72 72 6f 72 20 22 54 |. (|error "T|
|000056b0| 68 65 20 66 6f 6c 64 65 | 72 20 62 75 66 66 65 72 |he folde|r buffer|
|000056c0| 20 66 6f 72 20 74 68 69 | 73 20 6d 65 73 73 61 67 | for thi|s messag|
|000056d0| 65 20 68 61 73 20 62 65 | 65 6e 20 6b 69 6c 6c 65 |e has be|en kille|
|000056e0| 64 2e 22 29 29 0a 20 20 | 28 6c 65 74 20 28 28 65 |d.")). |(let ((e|
|000056f0| 64 69 74 2d 62 75 66 20 | 28 63 75 72 72 65 6e 74 |dit-buf |(current|
|00005700| 2d 62 75 66 66 65 72 29 | 29 0a 09 28 6d 70 20 76 |-buffer)|)..(mp v|
|00005710| 6d 2d 6d 65 73 73 61 67 | 65 2d 70 6f 69 6e 74 65 |m-messag|e-pointe|
|00005720| 72 29 29 0a 20 20 20 20 | 28 69 66 20 28 62 75 66 |r)). |(if (buf|
|00005730| 66 65 72 2d 6d 6f 64 69 | 66 69 65 64 2d 70 29 0a |fer-modi|fied-p).|
|00005740| 09 28 6c 65 74 20 28 28 | 69 6e 68 69 62 69 74 2d |.(let ((|inhibit-|
|00005750| 71 75 69 74 20 74 29 29 | 0a 09 20 20 28 73 61 76 |quit t))|.. (sav|
|00005760| 65 2d 65 78 63 75 72 73 | 69 6f 6e 0a 09 20 20 20 |e-excurs|ion.. |
|00005770| 20 28 73 65 74 2d 62 75 | 66 66 65 72 20 28 6d 61 | (set-bu|ffer (ma|
|00005780| 72 6b 65 72 2d 62 75 66 | 66 65 72 20 28 76 6d 2d |rker-buf|fer (vm-|
|00005790| 73 74 61 72 74 2d 6f 66 | 20 28 63 61 72 20 6d 70 |start-of| (car mp|
|000057a0| 29 29 29 29 0a 09 20 20 | 20 20 28 69 66 20 28 6e |)))).. | (if (n|
|000057b0| 6f 74 20 28 6d 65 6d 71 | 20 28 63 61 72 20 6d 70 |ot (memq| (car mp|
|000057c0| 29 20 76 6d 2d 6d 65 73 | 73 61 67 65 2d 6c 69 73 |) vm-mes|sage-lis|
|000057d0| 74 29 29 0a 09 09 28 65 | 72 72 6f 72 20 22 54 68 |t))...(e|rror "Th|
|000057e0| 65 20 6f 72 69 67 69 6e | 61 6c 20 63 6f 70 79 20 |e origin|al copy |
|000057f0| 6f 66 20 74 68 69 73 20 | 6d 65 73 73 61 67 65 20 |of this |message |
|00005800| 68 61 73 20 62 65 65 6e | 20 65 78 70 75 6e 67 65 |has been| expunge|
|00005810| 64 2e 22 29 29 0a 09 20 | 20 20 20 28 76 6d 2d 73 |d.")).. | (vm-s|
|00005820| 61 76 65 2d 72 65 73 74 | 72 69 63 74 69 6f 6e 0a |ave-rest|riction.|
|00005830| 09 20 20 20 20 20 28 77 | 69 64 65 6e 29 0a 09 20 |. (w|iden).. |
|00005840| 20 20 20 20 28 67 6f 74 | 6f 2d 63 68 61 72 20 28 | (got|o-char (|
|00005850| 76 6d 2d 73 74 61 72 74 | 2d 6f 66 20 28 63 61 72 |vm-start|-of (car|
|00005860| 20 6d 70 29 29 29 0a 09 | 20 20 20 20 20 28 66 6f | mp)))..| (fo|
|00005870| 72 77 61 72 64 2d 6c 69 | 6e 65 20 31 29 0a 09 20 |rward-li|ne 1).. |
|00005880| 20 20 20 20 28 6c 65 74 | 20 28 28 76 6d 2d 6d 65 | (let| ((vm-me|
|00005890| 73 73 61 67 65 2d 70 6f | 69 6e 74 65 72 20 6d 70 |ssage-po|inter mp|
|000058a0| 29 0a 09 09 20 20 20 76 | 6d 2d 6e 65 78 74 2d 63 |)... v|m-next-c|
|000058b0| 6f 6d 6d 61 6e 64 2d 75 | 73 65 73 2d 6d 61 72 6b |ommand-u|ses-mark|
|000058c0| 73 0a 09 09 20 20 20 62 | 75 66 66 65 72 2d 72 65 |s... b|uffer-re|
|000058d0| 61 64 2d 6f 6e 6c 79 29 | 0a 09 20 20 20 20 20 20 |ad-only)|.. |
|000058e0| 20 28 69 6e 73 65 72 74 | 2d 62 75 66 66 65 72 2d | (insert|-buffer-|
|000058f0| 73 75 62 73 74 72 69 6e | 67 20 65 64 69 74 2d 62 |substrin|g edit-b|
|00005900| 75 66 29 0a 09 20 20 20 | 20 20 20 20 28 61 6e 64 |uf).. | (and|
|00005910| 20 28 2f 3d 20 28 70 72 | 65 63 65 64 69 6e 67 2d | (/= (pr|eceding-|
|00005920| 63 68 61 72 29 20 3f 5c | 6e 29 20 28 69 6e 73 65 |char) ?\|n) (inse|
|00005930| 72 74 20 3f 5c 6e 29 29 | 0a 09 20 20 20 20 20 20 |rt ?\n))|.. |
|00005940| 20 28 64 65 6c 65 74 65 | 2d 72 65 67 69 6f 6e 20 | (delete|-region |
|00005950| 28 70 6f 69 6e 74 29 20 | 28 76 6d 2d 74 65 78 74 |(point) |(vm-text|
|00005960| 2d 65 6e 64 2d 6f 66 20 | 28 63 61 72 20 6d 70 29 |-end-of |(car mp)|
|00005970| 29 29 0a 09 20 20 20 20 | 20 20 20 28 76 6d 2d 64 |)).. | (vm-d|
|00005980| 69 73 63 61 72 64 2d 63 | 61 63 68 65 64 2d 64 61 |iscard-c|ached-da|
|00005990| 74 61 29 29 0a 09 20 20 | 20 20 20 28 76 6d 2d 73 |ta)).. | (vm-s|
|000059a0| 65 74 2d 65 64 69 74 65 | 64 2d 66 6c 61 67 20 28 |et-edite|d-flag (|
|000059b0| 63 61 72 20 6d 70 29 20 | 74 29 0a 09 20 20 20 20 |car mp) |t).. |
|000059c0| 20 28 76 6d 2d 6d 61 72 | 6b 2d 66 6f 72 2d 64 69 | (vm-mar|k-for-di|
|000059d0| 73 70 6c 61 79 2d 75 70 | 64 61 74 65 20 28 63 61 |splay-up|date (ca|
|000059e0| 72 20 6d 70 29 29 0a 09 | 20 20 20 20 20 28 69 66 |r mp))..| (if|
|000059f0| 20 28 65 71 20 76 6d 2d | 66 6c 75 73 68 2d 69 6e | (eq vm-|flush-in|
|00005a00| 74 65 72 76 61 6c 20 74 | 29 0a 09 09 20 28 76 6d |terval t|)... (vm|
|00005a10| 2d 73 74 75 66 66 2d 76 | 69 72 74 75 61 6c 2d 61 |-stuff-v|irtual-a|
|00005a20| 74 74 72 69 62 75 74 65 | 73 20 28 63 61 72 20 6d |ttribute|s (car m|
|00005a30| 70 29 29 0a 09 20 20 20 | 20 20 20 20 28 76 6d 2d |p)).. | (vm-|
|00005a40| 73 65 74 2d 6d 6f 64 66 | 6c 61 67 2d 6f 66 20 28 |set-modf|lag-of (|
|00005a50| 63 61 72 20 6d 70 29 20 | 74 29 29 0a 09 20 20 20 |car mp) |t)).. |
|00005a60| 20 20 28 76 6d 2d 73 65 | 74 2d 62 75 66 66 65 72 | (vm-se|t-buffer|
|00005a70| 2d 6d 6f 64 69 66 69 65 | 64 2d 70 20 74 29 0a 09 |-modifie|d-p t)..|
|00005a80| 20 20 20 20 20 28 76 6d | 2d 63 6c 65 61 72 2d 6d | (vm|-clear-m|
|00005a90| 6f 64 69 66 69 63 61 74 | 69 6f 6e 2d 66 6c 61 67 |odificat|ion-flag|
|00005aa0| 2d 75 6e 64 6f 73 29 0a | 09 20 20 20 20 20 28 76 |-undos).|. (v|
|00005ab0| 6d 2d 73 65 74 2d 65 64 | 69 74 2d 62 75 66 66 65 |m-set-ed|it-buffe|
|00005ac0| 72 2d 6f 66 20 28 63 61 | 72 20 6d 70 29 20 6e 69 |r-of (ca|r mp) ni|
|00005ad0| 6c 29 29 0a 09 20 20 20 | 20 28 69 66 20 28 65 71 |l)).. | (if (eq|
|00005ae0| 20 6d 70 20 76 6d 2d 6d | 65 73 73 61 67 65 2d 70 | mp vm-m|essage-p|
|00005af0| 6f 69 6e 74 65 72 29 0a | 09 09 28 76 6d 2d 70 72 |ointer).|..(vm-pr|
|00005b00| 65 76 69 65 77 2d 63 75 | 72 72 65 6e 74 2d 6d 65 |eview-cu|rrent-me|
|00005b10| 73 73 61 67 65 29 0a 09 | 20 20 20 20 20 20 28 76 |ssage)..| (v|
|00005b20| 6d 2d 75 70 64 61 74 65 | 2d 73 75 6d 6d 61 72 79 |m-update|-summary|
|00005b30| 2d 61 6e 64 2d 6d 6f 64 | 65 2d 6c 69 6e 65 29 29 |-and-mod|e-line))|
|00005b40| 29 29 0a 20 20 20 20 20 | 20 28 6d 65 73 73 61 67 |)). | (messag|
|00005b50| 65 20 22 4e 6f 20 63 68 | 61 6e 67 65 2e 22 29 29 |e "No ch|ange."))|
|00005b60| 0a 20 20 20 20 28 73 65 | 74 2d 62 75 66 66 65 72 |. (se|t-buffer|
|00005b70| 2d 6d 6f 64 69 66 69 65 | 64 2d 70 20 6e 69 6c 29 |-modifie|d-p nil)|
|00005b80| 0a 20 20 20 20 28 6b 69 | 6c 6c 2d 62 75 66 66 65 |. (ki|ll-buffe|
|00005b90| 72 20 65 64 69 74 2d 62 | 75 66 29 29 29 0a 0a 28 |r edit-b|uf)))..(|
|00005ba0| 64 65 66 75 6e 20 76 6d | 2d 65 64 69 74 2d 6d 65 |defun vm|-edit-me|
|00005bb0| 73 73 61 67 65 2d 61 62 | 6f 72 74 20 28 29 0a 20 |ssage-ab|ort (). |
|00005bc0| 20 22 41 62 6f 72 74 20 | 65 64 69 74 69 6e 67 20 | "Abort |editing |
|00005bd0| 6f 66 20 61 20 56 4d 20 | 6d 65 73 73 61 67 65 2c |of a VM |message,|
|00005be0| 20 77 69 74 68 6f 75 74 | 20 75 70 64 61 74 69 6e | without| updatin|
|00005bf0| 67 20 74 68 65 20 6d 65 | 73 73 61 67 65 27 73 20 |g the me|ssage's |
|00005c00| 66 6f 6c 64 65 72 2e 22 | 0a 20 20 28 69 6e 74 65 |folder."|. (inte|
|00005c10| 72 61 63 74 69 76 65 29 | 0a 20 20 28 69 66 20 28 |ractive)|. (if (|
|00005c20| 6e 75 6c 6c 20 76 6d 2d | 6d 65 73 73 61 67 65 2d |null vm-|message-|
|00005c30| 70 6f 69 6e 74 65 72 29 | 0a 20 20 20 20 20 20 28 |pointer)|. (|
|00005c40| 65 72 72 6f 72 20 22 54 | 68 69 73 20 69 73 20 6e |error "T|his is n|
|00005c50| 6f 74 20 61 20 56 4d 20 | 6d 65 73 73 61 67 65 20 |ot a VM |message |
|00005c60| 65 64 69 74 20 62 75 66 | 66 65 72 2e 22 29 29 0a |edit buf|fer.")).|
|00005c70| 20 20 28 69 66 20 28 6e | 75 6c 6c 20 28 62 75 66 | (if (n|ull (buf|
|00005c80| 66 65 72 2d 6e 61 6d 65 | 20 28 6d 61 72 6b 65 72 |fer-name| (marker|
|00005c90| 2d 62 75 66 66 65 72 20 | 28 76 6d 2d 65 6e 64 2d |-buffer |(vm-end-|
|00005ca0| 6f 66 20 28 63 61 72 20 | 76 6d 2d 6d 65 73 73 61 |of (car |vm-messa|
|00005cb0| 67 65 2d 70 6f 69 6e 74 | 65 72 29 29 29 29 29 0a |ge-point|er))))).|
|00005cc0| 20 20 20 20 20 20 28 65 | 72 72 6f 72 20 22 54 68 | (e|rror "Th|
|00005cd0| 65 20 66 6f 6c 64 65 72 | 20 62 75 66 66 65 72 20 |e folder| buffer |
|00005ce0| 66 6f 72 20 74 68 69 73 | 20 6d 65 73 73 61 67 65 |for this| message|
|00005cf0| 20 68 61 73 20 62 65 65 | 6e 20 6b 69 6c 6c 65 64 | has bee|n killed|
|00005d00| 2e 22 29 29 0a 20 20 28 | 76 6d 2d 73 65 74 2d 65 |.")). (|vm-set-e|
|00005d10| 64 69 74 2d 62 75 66 66 | 65 72 2d 6f 66 20 28 63 |dit-buff|er-of (c|
|00005d20| 61 72 20 76 6d 2d 6d 65 | 73 73 61 67 65 2d 70 6f |ar vm-me|ssage-po|
|00005d30| 69 6e 74 65 72 29 20 6e | 69 6c 29 0a 20 20 28 73 |inter) n|il). (s|
|00005d40| 65 74 2d 62 75 66 66 65 | 72 2d 6d 6f 64 69 66 69 |et-buffe|r-modifi|
|00005d50| 65 64 2d 70 20 6e 69 6c | 29 0a 20 20 28 6b 69 6c |ed-p nil|). (kil|
|00005d60| 6c 2d 62 75 66 66 65 72 | 20 28 63 75 72 72 65 6e |l-buffer| (curren|
|00005d70| 74 2d 62 75 66 66 65 72 | 29 29 0a 20 20 28 6d 65 |t-buffer|)). (me|
|00005d80| 73 73 61 67 65 20 22 41 | 62 6f 72 74 65 64 2c 20 |ssage "A|borted, |
|00005d90| 6e 6f 20 63 68 61 6e 67 | 65 2e 22 29 29 0a 00 00 |no chang|e."))...|
|00005da0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00005db0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00005dc0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00005dd0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00005de0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00005df0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00005e00| 76 6d 2d 66 6f 6c 64 65 | 72 2e 65 6c 00 00 00 00 |vm-folde|r.el....|
|00005e10| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00005e20| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00005e30| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00005e40| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00005e50| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00005e60| 00 00 00 00 20 20 20 36 | 36 34 20 00 20 20 20 20 |.... 6|64 . |
|00005e70| 31 32 20 00 20 20 20 20 | 32 34 20 00 20 20 20 20 |12 . |24 . |
|00005e80| 20 31 35 33 31 31 32 20 | 20 35 33 36 32 31 35 37 | 153112 | 5362157|
|00005e90| 31 31 33 20 20 31 31 35 | 31 33 00 20 30 00 00 00 |113 115|13. 0...|
|00005ea0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00005eb0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00005ec0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00005ed0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00005ee0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00005ef0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00005f00| 00 75 73 74 61 72 20 20 | 00 6b 79 6c 65 00 00 00 |.ustar |.kyle...|
|00005f10| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00005f20| 00 00 00 00 00 00 00 00 | 00 73 74 61 66 66 00 00 |........|.staff..|
|00005f30| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00005f40| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00005f50| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00005f60| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00005f70| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00005f80| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00005f90| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00005fa0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00005fb0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00005fc0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00005fd0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00005fe0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00005ff0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00006000| 3b 3b 3b 20 56 4d 20 66 | 6f 6c 64 65 72 20 72 65 |;;; VM f|older re|
|00006010| 6c 61 74 65 64 20 66 75 | 6e 63 74 69 6f 6e 73 0a |lated fu|nctions.|
|00006020| 3b 3b 3b 20 43 6f 70 79 | 72 69 67 68 74 20 28 43 |;;; Copy|right (C|
|00006030| 29 20 31 39 38 39 2c 20 | 31 39 39 30 2c 20 31 39 |) 1989, |1990, 19|
|00006040| 39 31 20 4b 79 6c 65 20 | 45 2e 20 4a 6f 6e 65 73 |91 Kyle |E. Jones|
|00006050| 0a 3b 3b 3b 0a 3b 3b 3b | 20 54 68 69 73 20 70 72 |.;;;.;;;| This pr|
|00006060| 6f 67 72 61 6d 20 69 73 | 20 66 72 65 65 20 73 6f |ogram is| free so|
|00006070| 66 74 77 61 72 65 3b 20 | 79 6f 75 20 63 61 6e 20 |ftware; |you can |
|00006080| 72 65 64 69 73 74 72 69 | 62 75 74 65 20 69 74 20 |redistri|bute it |
|00006090| 61 6e 64 2f 6f 72 20 6d | 6f 64 69 66 79 0a 3b 3b |and/or m|odify.;;|
|000060a0| 3b 20 69 74 20 75 6e 64 | 65 72 20 74 68 65 20 74 |; it und|er the t|
|000060b0| 65 72 6d 73 20 6f 66 20 | 74 68 65 20 47 4e 55 20 |erms of |the GNU |
|000060c0| 47 65 6e 65 72 61 6c 20 | 50 75 62 6c 69 63 20 4c |General |Public L|
|000060d0| 69 63 65 6e 73 65 20 61 | 73 20 70 75 62 6c 69 73 |icense a|s publis|
|000060e0| 68 65 64 20 62 79 0a 3b | 3b 3b 20 74 68 65 20 46 |hed by.;|;; the F|
|000060f0| 72 65 65 20 53 6f 66 74 | 77 61 72 65 20 46 6f 75 |ree Soft|ware Fou|
|00006100| 6e 64 61 74 69 6f 6e 3b | 20 65 69 74 68 65 72 20 |ndation;| either |
|00006110| 76 65 72 73 69 6f 6e 20 | 31 2c 20 6f 72 20 28 61 |version |1, or (a|
|00006120| 74 20 79 6f 75 72 20 6f | 70 74 69 6f 6e 29 0a 3b |t your o|ption).;|
|00006130| 3b 3b 20 61 6e 79 20 6c | 61 74 65 72 20 76 65 72 |;; any l|ater ver|
|00006140| 73 69 6f 6e 2e 0a 3b 3b | 3b 0a 3b 3b 3b 20 54 68 |sion..;;|;.;;; Th|
|00006150| 69 73 20 70 72 6f 67 72 | 61 6d 20 69 73 20 64 69 |is progr|am is di|
|00006160| 73 74 72 69 62 75 74 65 | 64 20 69 6e 20 74 68 65 |stribute|d in the|
|00006170| 20 68 6f 70 65 20 74 68 | 61 74 20 69 74 20 77 69 | hope th|at it wi|
|00006180| 6c 6c 20 62 65 20 75 73 | 65 66 75 6c 2c 0a 3b 3b |ll be us|eful,.;;|
|00006190| 3b 20 62 75 74 20 57 49 | 54 48 4f 55 54 20 41 4e |; but WI|THOUT AN|
|000061a0| 59 20 57 41 52 52 41 4e | 54 59 3b 20 77 69 74 68 |Y WARRAN|TY; with|
|000061b0| 6f 75 74 20 65 76 65 6e | 20 74 68 65 20 69 6d 70 |out even| the imp|
|000061c0| 6c 69 65 64 20 77 61 72 | 72 61 6e 74 79 20 6f 66 |lied war|ranty of|
|000061d0| 0a 3b 3b 3b 20 4d 45 52 | 43 48 41 4e 54 41 42 49 |.;;; MER|CHANTABI|
|000061e0| 4c 49 54 59 20 6f 72 20 | 46 49 54 4e 45 53 53 20 |LITY or |FITNESS |
|000061f0| 46 4f 52 20 41 20 50 41 | 52 54 49 43 55 4c 41 52 |FOR A PA|RTICULAR|
|00006200| 20 50 55 52 50 4f 53 45 | 2e 20 20 53 65 65 20 74 | PURPOSE|. See t|
|00006210| 68 65 0a 3b 3b 3b 20 47 | 4e 55 20 47 65 6e 65 72 |he.;;; G|NU Gener|
|00006220| 61 6c 20 50 75 62 6c 69 | 63 20 4c 69 63 65 6e 73 |al Publi|c Licens|
|00006230| 65 20 66 6f 72 20 6d 6f | 72 65 20 64 65 74 61 69 |e for mo|re detai|
|00006240| 6c 73 2e 0a 3b 3b 3b 0a | 3b 3b 3b 20 59 6f 75 20 |ls..;;;.|;;; You |
|00006250| 73 68 6f 75 6c 64 20 68 | 61 76 65 20 72 65 63 65 |should h|ave rece|
|00006260| 69 76 65 64 20 61 20 63 | 6f 70 79 20 6f 66 20 74 |ived a c|opy of t|
|00006270| 68 65 20 47 4e 55 20 47 | 65 6e 65 72 61 6c 20 50 |he GNU G|eneral P|
|00006280| 75 62 6c 69 63 20 4c 69 | 63 65 6e 73 65 0a 3b 3b |ublic Li|cense.;;|
|00006290| 3b 20 61 6c 6f 6e 67 20 | 77 69 74 68 20 74 68 69 |; along |with thi|
|000062a0| 73 20 70 72 6f 67 72 61 | 6d 3b 20 69 66 20 6e 6f |s progra|m; if no|
|000062b0| 74 2c 20 77 72 69 74 65 | 20 74 6f 20 74 68 65 20 |t, write| to the |
|000062c0| 46 72 65 65 20 53 6f 66 | 74 77 61 72 65 0a 3b 3b |Free Sof|tware.;;|
|000062d0| 3b 20 46 6f 75 6e 64 61 | 74 69 6f 6e 2c 20 49 6e |; Founda|tion, In|
|000062e0| 63 2e 2c 20 36 37 35 20 | 4d 61 73 73 20 41 76 65 |c., 675 |Mass Ave|
|000062f0| 2c 20 43 61 6d 62 72 69 | 64 67 65 2c 20 4d 41 20 |, Cambri|dge, MA |
|00006300| 30 32 31 33 39 2c 20 55 | 53 41 2e 0a 0a 28 64 65 |02139, U|SA...(de|
|00006310| 66 75 6e 20 76 6d 2d 6e | 75 6d 62 65 72 2d 6d 65 |fun vm-n|umber-me|
|00006320| 73 73 61 67 65 73 20 28 | 26 6f 70 74 69 6f 6e 61 |ssages (|&optiona|
|00006330| 6c 20 73 74 61 72 74 2d | 70 6f 69 6e 74 20 65 6e |l start-|point en|
|00006340| 64 2d 70 6f 69 6e 74 29 | 0a 20 20 28 6c 65 74 20 |d-point)|. (let |
|00006350| 28 28 6e 20 31 29 20 28 | 6d 65 73 73 61 67 65 2d |((n 1) (|message-|
|00006360| 6c 69 73 74 20 28 6f 72 | 20 73 74 61 72 74 2d 70 |list (or| start-p|
|00006370| 6f 69 6e 74 20 76 6d 2d | 6d 65 73 73 61 67 65 2d |oint vm-|message-|
|00006380| 6c 69 73 74 29 29 29 0a | 20 20 20 20 28 69 66 20 |list))).| (if |
|00006390| 28 61 6e 64 20 73 74 61 | 72 74 2d 70 6f 69 6e 74 |(and sta|rt-point|
|000063a0| 20 28 76 6d 2d 72 65 76 | 65 72 73 65 2d 6c 69 6e | (vm-rev|erse-lin|
|000063b0| 6b 2d 6f 66 20 28 63 61 | 72 20 73 74 61 72 74 2d |k-of (ca|r start-|
|000063c0| 70 6f 69 6e 74 29 29 29 | 0a 09 28 73 65 74 71 20 |point)))|..(setq |
|000063d0| 6e 20 28 31 2b 20 28 73 | 74 72 69 6e 67 2d 74 6f |n (1+ (s|tring-to|
|000063e0| 2d 69 6e 74 0a 09 09 20 | 20 20 20 20 28 76 6d 2d |-int... | (vm-|
|000063f0| 6e 75 6d 62 65 72 2d 6f | 66 0a 09 09 20 20 20 20 |number-o|f... |
+--------+-------------------------+-------------------------+--------+--------+
Only 25.0 KB of data is shown above.